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

pjd*_*vis 2 python dataframe pandas

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

在此输入图像描述

我从相同的数据中制作了月平均值的数据框:

在此输入图像描述

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

piR*_*red 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
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

然后fillnagroupbytransform('mean')

df.fillna(df.groupby(df.date.dt.month).transform('mean'))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述