例如,我有一个带有nan
的df
,并使用以下方法fillna
。你知道吗
import pandas as pd
a = [[2.0, 10, 4.2], ['b', 70, 0.03], ['x', ]]
df = pd.DataFrame(a)
print(df)
df.fillna(int(0),inplace=True)
print('fillna df\n',df)
dtype_df = df.dtypes.reset_index()
输出:
0 1 2
0 2 10.0 4.20
1 b 70.0 0.03
2 x NaN NaN
fillna df
0 1 2
0 2 10.0 4.20
1 b 70.0 0.03
2 x 0.0 0.00
col type
0 0 object
1 1 float64
2 2 float64
实际上,我希望column 1
保持int
的类型,而不是float
。你知道吗
我想要的输出:
fillna df
0 1 2
0 2 10 4.20
1 b 70 0.03
2 x 0 0.00
col type
0 0 object
1 1 int64
2 2 float64
那怎么做呢?你知道吗
尝试添加
downcast='infer'
以向下转换任何符合条件的列:相应的
dtypes
是相关问题 更多 >
编程相关推荐