Pandas fillna方法使用月平均值来丢失每小时时间点数据

时间:2016-12-16 10:28:55

标签: python pandas dataframe

我创建了每小时空气污染测量的数据框。我想用月平均值替换一些缺失值。

enter image description here

我已根据相同的数据制作了月平均值的数据框:

enter image description here

如何在原始数据框中使用fillna方法来填充缺失数据,并使用其各自月份的平均值?

1 个答案:

答案 0 :(得分:6)

考虑df

df = pd.DataFrame(dict(
        date=pd.date_range('2015-04-01', periods=9, freq='5B'),
        ozone=np.random.rand(9) * np.random.choice((1, np.nan), 9, p=(.6, .4)),
        nox=np.random.rand(9) * np.random.choice((1, np.nan), 9, p=(.6, .4)),
    ))
df

enter image description here

然后fillnagroupbytransform('mean')

df.fillna(df.groupby(df.date.dt.month).transform('mean'))

enter image description here