更改数据透视表的索引?

时间:2017-12-21 13:46:24

标签: python pandas pivot-table

我有一个看起来像这样的数据透视表 -

        0
type    A    B   C
obs
x       NA   1   2
y       1    1   2
z       2    2   3

我想将索引重置为这样 -

obs    A   B   C
x      NA  1   2
y      1   1   2
z      2   2   3

reset_indexinplace=True一起使用对我不起作用。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

您需要在数据透视中删除[]或指定参数values以阻止列中的MultiIndex

df = pd.DataFrame({
'obs': ['x', 'x', 'y', 'y', 'y', 'z', 'z', 'z'], 
'type': ['B', 'C', 'A', 'B', 'C', 'A', 'B', 'C'], 
0: [1.0, 2.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0]}
)
#print (df)


print (df.pivot_table(index='obs', columns='type'))
        0          
type    A    B    C
obs                
x     NaN  1.0  2.0
y     1.0  1.0  2.0
z     2.0  2.0  3.0

print (df.pivot_table(index='obs', columns='type', values=[0]))
        0          
type    A    B    C
obs                
x     NaN  1.0  2.0
y     1.0  1.0  2.0
z     2.0  2.0  3.0

print (df.pivot_table(index='obs', columns='type', values=0))

type    A    B    C
obs                
x     NaN  1.0  2.0
y     1.0  1.0  2.0
z     2.0  2.0  3.0