执行以下操作的正确方法是什么:df['file_size'] = np.where(df['file_size'], int(df['file_size']), None)目前我得到的错误是:类型错误:无法将系列转换为 <class 'int'>当尝试直接这样做时:df['file_size'] = df['file_size'].astype(int)ValueError:无法将非有限值(NA 或 inf)转换为整数
1 回答
莫回无
TA贡献1865条经验 获得超7个赞
使用是integer_na
因为默认情况下至少有一个缺失值将整数转换为浮点数(因为NaN
是float
),因此需要特殊类型Int64
来解决此问题:
df = pd.DataFrame({'file_size':[5,4,np.nan,None]})
df['file_size'] = df['file_size'].astype("Int64")
print (df)
file_size
0 5
1 4
2 <NA>
3 <NA>
添加回答
举报
0/150
提交
取消