对于初学者友好的问题很抱歉,但此代码对我不起作用,我无法找出原因。它运行没有错误,但它没有填充值。
data['date'] = data['date'].replace(np.nan, '22.02.2021')
我尝试使用这样的“fillna”功能:
data['date'].fillna('22.02.2021', inplace=True)
但它给出了错误并说填充值必须在类别中。
答案 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
中的 date
从 category
到 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()