汇总数据框以及 python 中的行数

Rolling up data frame along with count of rows in python

我在 python 仍处于学习阶段,想知道我们如何汇总数据并计算名为 count 的列中的重复数据行

数据帧结构如下

Col1| Value
A   |  1
B   |  1
A   |  1
B   |  1
C   |  3
C   |  3
C   |  3
C   |  3

我的结果应该如下

Col1|Value|Count
 A  |  1  | 2
 B  |  1  | 2
 C  |  3  | 4
>>> df2 = df.groupby(['Col1', 'Value']).size().reset_index()
>>> df2.columns = ['Col1', 'Value', 'Count']
>>> df2
  Col1  Value  Count
0    A      1      2
1    B      1      2
2    C      3      4

对于这种情况,Roman Pekar 的正确回答是正确的。但是,在尝试为问题文本中所述的一般情况编写解决方案之后,我看到了它,而不仅仅是具有特定列名的示例。因此,对于一般情况,请考虑:

df.groupby([df[c] for c in df.columns]).size().reset_index().rename(columns={0: 'Count'})

例如:

import pandas as pd

df = pd.DataFrame({'Col1': ['a', 'a', 'a', 'b', 'c'], 'Value': [1, 2, 1, 3, 2]})

>>> df.groupby([df[c] for c in df.columns]).size().reset_index().rename(columns={0: 'Count'})
    Col1    Value   Count
0   a   1   2
1   a   2   1
2   b   3   1
3   c   2   1

您也可以试试:

df.groupby('Col1')['Value'].value_counts().reset_index(name='Count')