【发布时间】:2019-07-12 06:16:05
【问题描述】:
我想计算数据元组在 pandas DataFrame 中出现的次数。例如,假设我的数据如下所示:
a b
0 0 0
1 0 0
2 1 0
3 1 1
4 1 1
我想得到这样的“每行出现的次数”输出:
(0,0) 2
(1,0) 1
(1,1) 2
dtype: int64
但是,我知道如何做的最接近的事情是做一些算术,将两列合并成一个系列,然后在系列上调用 value_counts:
>>> (df['a'] * 10 + df['b']).value_counts()
0 2
10 1
11 2
dtype: int64
我不想手动合并列来获得这些计数。但是DataFrame好像没有value_counts的方法:
>>> df.value_counts()
AttributeError: 'DataFrame' object has no attribute 'value_counts'
有没有一种简单的方法可以从数据框中获取行数信息?
【问题讨论】:
-
How to count duplicate rows in pandas dataframe? 的可能重复项 --- 应该是您需要的答案(按所有列分组并计算每组中的项目数)。