繁体   English   中英

为什么我的数据透视表的值是偏移的?

[英]Why the values of my pivot-table are offset?

我不明白为什么在这种情况下值会在pivot_table中切换。 该计数与我用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

在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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM