为什么我的pivot-table的值被偏移?

问题描述 投票:1回答:1

在这种情况下,我不明白为什么值在pivot_table中是swop。计数与我用pd.cut()设置的标签数量不对应。

df
    A   B
0  12  75
1  76  34
2  42  62
3  19  15
df['Cat'] = pd.cut(df2['B'], bins=[0, 25, 50, 75, 100], labels=['C1', 'C2', 'C3', 'C4'])
df
    A   B Cat
0  12  75  C3
1  76  34  C2
2  42  62  C3
3  19  15  C1
df.pivot_table(columns='Cat', aggfunc='count')
Cat  C3  C2  C1
A     1   1   2
B     1   1   2

我期待输出:

Cat  C3  C2  C1
A     2   1   1
B     2   1   1
python pandas pivot-table
1个回答
0
投票

在版本pandas 0.24.2它工作得很好,也添加了列没有数据C4,因为分类:

df = df2.pivot_table(columns='Cat', aggfunc='count')
print (df)
Cat  C1  C2  C3  C4
A     1   1   2   0
B     1   1   2   0

替代方案:

df = df2.groupby('Cat').count().T
print (df)
Cat  C1  C2  C3  C4
A     1   1   2   0
B     1   1   2   0
© www.soinside.com 2019 - 2024. All rights reserved.