擅长:python、mysql、java
<p>你只需要做<code>df.unstack()</code>就可以创建一个多索引序列,其中月份作为第一级索引,年份作为第二级索引。如果您希望它们是列,那么只需在之后调用<code>reset_index()</code>。</p>
<pre class="lang-py prettyprint-override"><code>>>> df
Jan Feb
2001 3 4
2002 2 7
>>> df.unstack()
Jan 2001 3
2002 2
Feb 2001 4
2002 7
>>> df = df.unstack().reset_index(name='value')
>>> df
level_0 level_1 value
0 Jan 2001 3
1 Jan 2002 2
2 Feb 2001 4
3 Feb 2002 7
>>> df.rename(columns={'level_0': 'month', 'level_1': 'year'}, inplace=True)
>>> df
month year value
0 Jan 2001 3
1 Jan 2002 2
2 Feb 2001 4
3 Feb 2002 7
</code></pre>