如何移除DataFrame列中数字的逗号以转换为整数类型?
移除DataFrame列中的逗号并转换为整数类型
解决步骤:
- 可选:先确认列的当前数据类型,验证问题
print(df['Daily Oil Consumption (Barrels)'].dtype)
- 移除逗号并转换为整数类型
如果列中所有值都是带逗号的字符串,直接用以下代码:
df['Daily Oil Consumption (Barrels)'] = df['Daily Oil Consumption (Barrels)'].str.replace(',', '').astype(int)
如果存在缺失值或非数字字符,建议用pd.to_numeric处理异常情况:
import pandas as pd df['Daily Oil Consumption (Barrels)'] = pd.to_numeric( df['Daily Oil Consumption (Barrels)'].str.replace(',', ''), errors='coerce' # 无法转换的值设为NaN ).fillna(0).astype(int) # 填充NaN为0后转整数,可根据需求修改填充值
- 若列存在混合类型(部分是数字部分是字符串),先统一转为字符串再处理:
df['Daily Oil Consumption (Barrels)'] = df['Daily Oil Consumption (Barrels)'].astype(str).str.replace(',', '').astype(int)
内容的提问来源于stack exchange,提问作者emmanuel
相关产品推荐
相关产品推荐

