簡體   English   中英

如何將 Dataframe 的列的數據類型從 float 更改為其中包含 NaN 值的 int?

[英]How to change the data type of column of a Dataframe from float to int which has NaN values in it?

這不是重復的。 所有其他問題,您必須在構造DataFrame時設置 dtype dtype='Int64'pd.Int64Dtype()

我有一個 dataframe 的列名score ,其中包含float,Nan值。 我想將類型更改為int。 我用過

pd.to_numeric(df['score'], errors='coerce')
df['score'].map(int)
df['score'].astype('Int64')

但似乎沒有一種方法適用於此。 我知道我可以將NaN值轉換為其他值,轉換然后再次更改值,但這是一種不好的做法。 有什么好的方法可以做到嗎?

你可以試試這個。。

import numpy as np

df['score'].replace('nan', np.nan).fillna(0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM