In [11]: df = DataFrame(randn(100000,2),index=pd.date_range('20130101',periods=100000,freq='T'),columns=list('AB'))
In [12]: df
Out[12]:
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 100000 entries, 2013-01-01 00:00:00 to 2013-03-11 10:39:00
Freq: T
Data columns (total 2 columns):
A 100000 non-null values
B 100000 non-null values
dtypes: float64(2)
這是每一個每列的所有意見的總和/ 10萬
In [13]: df.mean()
Out[13]:
A -0.001421
B -0.000764
dtype: float64
這是每列的平均,而是由一個月分組,所以differening OBS的數量每月
In [14]: df.resample('m',how='mean')
Out[14]:
A B
2013-01-31 -0.004447 0.003479
2013-02-28 0.001062 -0.002656
2013-03-31 0.000903 -0.008289
僅有上面的數字,例如平均月平均的平均
In [15]: df.resample('m',how='mean').mean()
Out[15]:
A -0.000827
B -0.002489
dtype: float64
集團的每一天,然後取平均值
In [16]: df.resample('D',how='mean')
Out[16]:
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 70 entries, 2013-01-01 00:00:00 to 2013-03-11 00:00:00
Freq: D
Data columns (total 2 columns):
A 70 non-null values
B 70 non-null values
dtypes: float64(2)
天
In [17]: df.resample('D',how='mean').mean()
Out[17]:
A -0.001005
B -0.001491
dtype: float64
均值的平均值例如,如果你的所有觀察結果在同一個月,然後(你在上面的第1部分和第2部分)
df.resample('M',how='mean') == df.mean()
第3部分應該是相同的,只有在你每天都有一整套觀察結果的情況下。在你的例子中不清楚如果是這種情況。
In [19]: df['2013-2'].mean()
Out[19]:
A 0.001062
B -0.002656
dtype: float64
In [20]: df['2013-2'].resample('D',how='mean').mean()
Out[20]:
A 0.001062
B -0.002656
dtype: float64
當我的意思是每一天,我的例子每天都有60級* 24的OBS
In [21]: df['2013-2'].count()
Out[21]:
A 40320
B 40320
dtype: int64
In [22]: 24*60
Out[22]: 1440
28天的二月
In [23]: 24*60*28
Out[23]: 40320
是什麼daily_above_zero? –
daily_above_zero是一個熊貓數據框。 – Jomme