【问题标题】:Renaming a pandas pivot table without losing axis labels重命名熊猫数据透视表而不丢失轴标签
【发布时间】:2012-12-31 00:30:31
【问题描述】:

当我在数据透视表上调用重命名时,我丢失了轴标签:

In [5]: df = pd.DataFrame(dict(x=[0,0,1,0,1], y=[1,0,1,1,0], z=[0,0,1,0,1]))
In [6]: pt = pd.pivot_table(df, 'z', cols='x', rows='y')
In [7]: print pt
x  0  1
y      
0  0  1
1  0  1
In [8]: labels = {0:'False', 1:'True'}
In [9]: print pt.rename(index=labels, columns=labels) # discards "x" and "y"
       False  True
False      0     1
True       0     1

有没有办法在不丢失轴标签的情况下做到这一点?

【问题讨论】:

  • 这并不理想,但你可以在重命名后执行 pt.column.name = 'x' 。保留轴标签似乎是一个很好的增强功能。
  • @Zelazny7 我不确定在重命名时保持轴标签应该是预期的行为,尽管当传递带有 name x 的系列时,我认为它应该给出标签 x。

标签: python pandas pivot-table


【解决方案1】:

当您旋转时,x 和 y 的值标签,这是预期的行为。

试试这个:

df['x'] = df['x'] == 1
pt = pandas.pivot_table(df, 'z', cols='x', rows='y')
print pt
x  False  True 
y               
0      0      1
1      0      1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-28
    • 2023-01-11
    • 2016-12-23
    • 1970-01-01
    • 2021-12-12
    • 2017-01-23
    • 2018-07-16
    相关资源
    最近更新 更多