使用dataframe的索引数据的pandas数据透视表

时间:2014-02-08 13:41:20

标签: python-2.7 pandas

我想从pandas数据框创建一个数据透视表 使用dataframe.pivot() 并且不仅包括数据框列,还包括数据框索引中的数据。 找不到任何显示如何操作的文档。 有什么提示吗?

1 个答案:

答案 0 :(得分:7)

使用reset_index将索引设为列:

In [45]: df = pd.DataFrame({'y': [0, 1, 2, 3, 4, 4], 'x': [1, 2, 2, 3, 1, 3]}, index=np.arange(6)*10)

In [46]: df
Out[46]: 
    x  y
0   1  0
10  2  1
20  2  2
30  3  3
40  1  4
50  3  4

In [47]: df.reset_index()
Out[47]: 
   index  x  y
0      0  1  0
1     10  2  1
2     20  2  2
3     30  3  3
4     40  1  4
5     50  3  4

因此,pivot将索引用作值:

In [48]: df.reset_index().pivot(index='y', columns='x')
Out[48]: 
   index        
x      1   2   3
y               
0      0 NaN NaN
1    NaN  10 NaN
2    NaN  20 NaN
3    NaN NaN  30
4     40 NaN  50