我有一个包含整数项的序列,但也有一些空项。它用dtype=float64
表示。我想把它转换成一个带有dtype=object
的序列,其中整数项存储为Pythonint
s,空项存储为np.nan
s
我下面有两次尝试。第一个不起作用,因为int
是(出乎意料的?)仍转换为float
。第二种方法如我所愿。在
s = pd.Series([1, np.nan])
s = s.astype(object)
i = s.notnull()
s[i] = s[i].astype(int)
type(s[0])
上面的代码段返回float
。:(
上面的代码段返回int
。:)
为什么第一个例子不能工作,即使这个系列有dtype=object
?转换为list
似乎是一个非常奇怪的方法来实现这一点,但我找不到任何其他方法来实现它。在
在熊猫身上有没有更简单的方法?在
关于在Pandas中是否有更简单的方法来实现这一点,从0.24版(2019年1月)起,您可以使用nullable integers来处理整数值和缺失数据:
相关问题 更多 >
编程相关推荐