Python 将索引值转换为表中的列

Python 将索引值转换为表中的列,python,pandas,Python,Pandas,如果有一个长的数据帧,它的特点是两列多索引和一列带值。我认为这是用pandas(tidy)表示数据的最佳方式,但我希望将其转换为excel能够使用的格式。当前格式的行太多。我首先从熊猫开始,因为我有大约6GB的.csv数据,excel无法完成这项工作。很多都被裁掉了,所以我希望产量更容易管理 VALUE DATE ID 2005-01-01 00:00:00 222

如果有一个长的数据帧,它的特点是两列多索引和一列带值。我认为这是用pandas(tidy)表示数据的最佳方式,但我希望将其转换为excel能够使用的格式。当前格式的行太多。我首先从熊猫开始,因为我有大约6GB的.csv数据,excel无法完成这项工作。很多都被裁掉了,所以我希望产量更容易管理

                                VALUE
DATE                    ID      
2005-01-01 00:00:00     222     3.8
2005-01-01 01:00:00     222     3.7
2005-01-01 02:00:00     222     3.2
2005-01-01 00:00:00     201     3.1
2005-01-01 01:00:00     201     3.7
2005-01-01 02:00:00     201     3.2
...................................
.csv导出所需的格式如下所示:

                        201     222     ....
DATE                          
2005-01-01 00:00:00     3.1     3.8     ....
2005-01-01 01:00:00     3.7     3.7     ....
2005-01-01 02:00:00     3.2     3.2     ....

因此,简而言之,我想将每个索引值“ID”转换为一个单独的列。

选择列
并通过以下方式重塑:

如果
df
系列
,则使用:

df1 = df.unstack()

我很惊讶它这么简单。试过之后,正确的使用方法似乎是df1=df.unstack('VALUE')@Harper-如果
df
是系列,那么
df1=df.unstack()
应该工作是的,这也是一个选项,但是
df1=df['VALUE'])。unstack()
不是。它返回一个键错误。
df1 = df.unstack()