我试图在DF中将一些浮点列转换为int,但我得到了上面的错误。我尝试过将其转换为0,也尝试过将NA填充为0(我不希望这样做,因为在我的数据集中NA是必需的)
我做错了什么? 我两个都试过了:
orginalData[NumericColumns] = orginalData[NumericColumns].astype('Int64')
#orginalData[NumericColumns] = orginalData[NumericColumns].fillna(0).astype('Int64')
但它总是导致同样的错误
TypeError: cannot safely cast non-equivalent float64 to int64
如何转换列
对于NAN,您需要将NAN替换为0,然后执行类型转换
为了安全地将float转换为int-dtype,数组只能包含整数。如果您坚持,您可以尝试以下方法:
根据您的pandas版本,您可以一次安全地转换多个列。您不需要使用apply来进行此操作
无需更换。 您可以通过执行以下操作安全地传递到
Int64
:您的
nans
将被<NA>
替换。 Source您需要有熊猫>;。24版本
相关问题 更多 >
编程相关推荐