<p>如果我没弄错,你想把你的每日平均数时间序列(你已经计算过了)重新塑造成一个矩形数据框,不同的日期作为列,不同的年份作为行。<br/>
这可以通过pandas重塑函数轻松实现,例如使用<a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.pivot.html" rel="noreferrer">^{<cd1>}</a>:</p>
<p>一些虚拟数据:</p>
<pre><code>In [45]: index = pd.date_range(start=date(1996, 1,1), end=date(2010, 6, 30), freq='D')
In [46]: daily = pd.DataFrame(index=index, data=np.random.random(size=len(index)), columns=['temperature'])
</code></pre>
<p>首先,我添加带有年份和日期的列:</p>
^{pr2}$
<p>现在,我们可以重塑这个数据帧:</p>
<pre><code>In [50]: daily.pivot(index='year', columns='day', values='temperature')
Out[50]:
day 1 2 ... 365 366
year ...
1996 0.081774 0.694968 ... 0.679461 0.700833
1997 0.043134 0.981707 ... 0.009357 NaN
1998 0.257077 0.297290 ... 0.701941 NaN
... ... ... ... ... ...
2008 0.047145 0.750354 ... 0.996396 0.761159
2009 0.348667 0.827057 ... 0.881424 NaN
2010 0.269743 0.872655 ... NaN NaN
[15 rows x 366 columns]
</code></pre>