以下是一个示例代码,说明如何按列对DataFrame进行分组,并获取另一列的前三个count()值:
import pandas as pd
# 创建示例DataFrame
data = {'A': ['A1', 'A1', 'A2', 'A2', 'A3', 'A3', 'A3'],
'B': [1, 2, 3, 4, 5, 6, 7]}
df = pd.DataFrame(data)
# 按列A进行分组,并获取列B的前三个count()值
grouped = df.groupby('A')['B'].count().nlargest(3)
print(grouped)
输出结果:
A
A3 3
A1 2
A2 2
Name: B, dtype: int64
解释:
首先,我们创建了一个示例DataFrame,其中包含两列A和B。然后,我们使用groupby()
方法按列A对DataFrame进行分组,并指定我们想要获取的列B。接下来,我们使用count()
方法计算每个组中列B的数量。最后,我们使用nlargest(3)
方法获取前三个count()值,其中“A3”是最高的,为3。