我的数据(df)有一列"duration_time";以分钟和秒为单位的值如下:10:43
这些值的范围从5到15分钟
此列的数据类型为"对象">
此列中缺少几个值。
有没有办法用这一列的平均值来填充这些缺失的值
我尝试了不同的方法,但没有结果df['duration_time'] = df['duration_time'].fillna(df['duration_time'].mean())
我收到了以下消息:TypeError: can only concatenate str (not "int") to str
当我尝试计算列的平均值时:df['duration_time'].mean()
我得到以下消息:TypeError: can only concatenate str (not "int") to str
提前感谢您的帮助!
我认为您的系列df['duration_time']实际上不是日期时间类型。如果我这样做:
df['duration_time']=pd.Series(['10:43',None,0])
df['duration_time'].fillna(df['duration_time'].mean())
然后我可以重现你的错误。但是,如果我将该系列打包到to_datetime()中,那么您的代码可以工作:
df['duration_time']=pd.to_datetime(pd.Series(['10:43',None,0]))
df['duration_time'].fillna(df['duration_time'].mean())