, , . , , , () .
df=pd.DataFrame({ 'month' : [10,11,12,1,2,3],
'temp' : [65,50,45,np.nan,40,43] }).set_index('month')
, , , , , - . , 3, , . ( min_periods=1, @user394430.)
df['rollmean12'] = df['temp'].rolling(12,center=True,min_periods=1).mean()
df['rollmean3'] = df['temp'].rolling( 3,center=True,min_periods=1).mean()
, . , update() (. ).
df['update'] = df['rollmean3']
df['update'].update( df['temp'] )
, , , .
df['ffill'] = df['temp'].ffill()
df['bfill'] = df['temp'].bfill()
df['interp'] = df['temp'].interpolate()
interpolate() , intepolation. . pandas . statck:
DataFrame pandas
:
temp rollmean12 rollmean3 update ffill bfill interp
month
10 65.0 48.6 57.500000 65.0 65.0 65.0 65.0
11 50.0 48.6 53.333333 50.0 50.0 50.0 50.0
12 45.0 48.6 47.500000 45.0 45.0 45.0 45.0
1 NaN 48.6 42.500000 42.5 45.0 40.0 42.5
2 40.0 48.6 41.500000 40.0 40.0 40.0 40.0
3 43.0 48.6 41.500000 43.0 43.0 43.0 43.0
, , "update" "interp" . , , .