我有一个带有float和nan列的数据帧。
这些是电话号码,它们看起来很奇怪,就像浮动的一样(它最后得到一个“.0”,电话号码看起来像这个5551981180099.0)。我试图使用df['phone'].astype(int)
来解决这个问题,但是它与nan有错误,我得到了一个“cannotconvertnastoint”错误。在
所以我带着这个去了残酷的力量:
for i in range(len(df.index)):
if pd.isnull(df['phone'][i]) == False:
df['phobe'][i] = int(df['phone'][i])
但当我print(type(df['phone'][i]))
时,它告诉我它仍然是class 'numpy.float64'
。在
为了让电话号码看起来好看,我尝试了各种方法(转换成字符串并去掉最后两个字符,应用astype(str)、astype(int)等),但似乎没有任何效果。在
有什么建议吗?在
如果您有
NaN
值与int
,那么根据设计,所有值都将转换为float
s您可以将
NaN
替换为某些int
,然后可以将列转换为int
。在或先删除
^{pr2}$NaN
行:或者将所有值替换为
str
,然后删除.0
,然后得到字符串NaN
(不缺少值):如果需要删除最后2个字符,请使用indexing with str:
相关问题 更多 >
编程相关推荐