基于python中的多个列获取value_counts

时间:2015-02-02 23:13:56

标签: python pandas

我正在尝试根据列CA查找列B中的值计数。我正在尝试groupby但没有成功。我怎样才能做到这一点?

df = DataFrame({'A' : ['foo', 'foo', 'foo', 'foo',
                        'bar', 'bar', 'bar', 'bar'],
                'B' : ['1', '1', '1', '2',
                       '1', '1', '2', '2'],
               'C' : [2, 2, 3, 3, 2, 1, 2, 1]})

结果

A, B, C, Count
foo, 1, 2, 2
foo, 1, 3, 1
foo, 2, 3, 1
bar, 1, 1, 1
bar, 1, 2, 1
bar, 2, 1, 1
bar, 2, 2, 1

1 个答案:

答案 0 :(得分:1)

这是你正在寻找的吗?

In [44]: table = pd.pivot_table(df, values='C', index='A',columns='B', aggfunc=len)
In [45]: df
Out[45]: 
     A  B  C
0  foo  1  2
1  foo  1  3
2  foo  1  3
3  foo  2  3
4  bar  1  2
5  bar  1  3
6  bar  2  2
7  bar  2  2

In [46]: table
Out[46]: 
B    1  2
A        
bar  2  2
foo  3  1