2016-12-16 9 views
1

毎時大気汚染測定のデータフレームを作成しました。毎月の平均値に置き換えたい欠損値がいくつかあります。毎月の平均を使用して毎時のポイントデータが欠落している場合のPandas fillnaメソッド

enter image description here

私は、同じデータから、月平均値のデータフレームを作っています

enter image description here

どのように私は平均値で欠落したデータを埋めるために私の元のデータフレームにfillnaメソッドを使用することができますそれぞれの月間?

答えて

5

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

その後、

fillnagroupbyとし、本質的に

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

enter image description here

+1

transform('mean')を検討し、私は、SAMを提出したいですe。しかし、あなたはほとんどいつもより速いです^^ – Quickbeam2k1

+0

完璧に動作します! – Paulos

関連する問題