填充 NAN 并转换为 int pandas
filling NAN and converting to int pandas
我有一个整数数据框。预览(由于删除了前 3 行,从 3 开始):
'pixel1'列的原始数据是int
,但是那里的NAN
将其强制为float
。
我尝试用以下方法修复它:
X_train.fillna(method='ffill', inplace=True)
X_train = X_train.astype(int)
print(X_train.head())
结果是:
- 我可以获取
fillna
使用的值的数据类型吗?
- 有更好的方法吗? (最好 = 跳过
astype
步骤,因为数据最初是 int
- 我在文件中植入了 NAN
,这导致 int 浮动不需要的数据转换...)
如果可能的话,我建议使用 ffill
和 bfill
来回填一些 NaN
:
X_train = X_train.ffill().bfill().astype(int)
如果没有:
X_train = X_train.ffill().astype(int)
我有一个整数数据框。预览(由于删除了前 3 行,从 3 开始):
'pixel1'列的原始数据是int
,但是那里的NAN
将其强制为float
。
我尝试用以下方法修复它:
X_train.fillna(method='ffill', inplace=True)
X_train = X_train.astype(int)
print(X_train.head())
结果是:
- 我可以获取
fillna
使用的值的数据类型吗? - 有更好的方法吗? (最好 = 跳过
astype
步骤,因为数据最初是int
- 我在文件中植入了NAN
,这导致 int 浮动不需要的数据转换...)
如果可能的话,我建议使用 ffill
和 bfill
来回填一些 NaN
:
X_train = X_train.ffill().bfill().astype(int)
如果没有:
X_train = X_train.ffill().astype(int)