对于初学者友好的问题很抱歉,但这段代码对我不起作用,我不知道为什么。它运行时没有错误,但不会填充值。
data['date'] = data['date'].replace(np.nan, '22.02.2021')
我试着用";fillna";功能如下:
data['date'].fillna('22.02.2021', inplace=True)
但它给出了错误,并表示填充值必须在类别中。
通常您可以使用熊猫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)
但是,由于您的评论,即无论如何都会抛出错误">值错误:填充值必须在类别中",您必须将数据帧中date
列的dtype
从category
更改为datetime64
,请参阅如何将Pandas数据帧中的字符串转换为';日期';数据类型和更改pandas中的列类型
使用astype()
转换日期时间字符串(22.02.2021
)时,可以跳过使用pd.datetime()