如何用列中的日期替换 nan 值?

时间:2021-03-14 11:25:44

标签: python pandas

对于初学者友好的问题很抱歉,但此代码对我不起作用,我无法找出原因。它运行没有错误,但它没有填充值。

data['date'] = data['date'].replace(np.nan, '22.02.2021')

我尝试使用这样的“fillna”功能:

data['date'].fillna('22.02.2021', inplace=True)

但它给出了错误并说填充值必须在类别中。

1 个答案:

答案 0 :(得分:1)

通常你可以使用熊猫pd.to_datetime()

https://datatofish.com/replace-nan-values-with-zeros/ :

单列:

df['DataFrame Column'] = df['DataFrame Column'].fillna(value=pd.to_datetime('2/22/2021'), inplace=True)

整个数据框:

df.fillna(value=pd.to_datetime('2/22/2021'), inplace=True)

但是,由于您的评论错误“值错误:填充值必须在类别中”,无论如何您必须更改列 dtype 中的 datecategory 到 ie datetime64 的数据框见 How do I convert strings in a Pandas data frame to a 'date' data type?Change column type in pandas

使用 22.02.2021 投射日期时间字符串 (astype()) 时,您可以跳过使用 pd.datetime()