我正在尝试将 dataframe
中的列 (A
) 的数据类型从 float64
转换为 int
>,
df['A'].astype(numpy.int64)
但之后,A
仍然获取 float64
作为数据类型。我想知道如何解决这个问题。
最佳答案
看来你的输出没有分配回来,所以需要:
df['A'] = df['A'].astype(numpy.int64)
如果 NaN
使用 fillna
将它们转换为 int
:
df['A'] = df['A'].fillna(0).astype(numpy.int64)
或者通过 dropna
删除 A
列中带有 NaN
的所有行:
df = df.dropna('A')
df['A'] = df['A'].astype(numpy.int64)
关于pandas 将 float64 转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47013973/