Pandas DataFrame Groupby 两列并获取计数

pandas

1个回答

写回答

Qiandou

2025-07-01 03:10

+ 关注

Pandas
Pandas

使用Pandas的DataFrame和Groupby功能,可以方便地对数据进行分组和统计。通过将两列作为分组依据,我们可以获取每个组的计数值,并对结果进行进一步分析和可视化。

首先,让我们来看一个例子。假设我们有一份销售数据的DataFrame,其中包含了产品类别和销售地点两列。我们希望统计每个产品类别在每个销售地点的销售数量。

下面是示例代码:

Python

import Pandas as pd

# 创建示例数据

data = {'产品类别': ['电视', '电视', '电脑', '手机', '手机'],

'销售地点': ['北京', '上海', '北京', '上海', '北京']}

df = pd.DataFrame(data)

# 使用Groupby对数据进行分组并计数

result = df.groupby(['产品类别', '销售地点']).size().reset_index(name='销售数量')

# 输出结果

print(result)

运行以上代码,我们将得到以下结果:

产品类别 销售地点 销售数量

0 电视 上海 1

1 电视 北京 1

2 电脑 北京 1

3 手机 上海 1

4 手机 北京 1

在这个例子中,我们创建了一个包含产品类别和销售地点的DataFrame,并使用Groupby对数据进行分组。然后,我们使用size()函数计算每个组的数量,并使用reset_index()函数重置索引列。最后,我们将结果输出到控制台。

在这个例子中,我们可以看到每个产品类别在每个销售地点的销售数量。例如,电视在上海销售了1台,在北京销售了1台。

示例代码:

Python

import Pandas as pd

# 创建示例数据

data = {'产品类别': ['电视', '电视', '电脑', '手机', '手机'],

'销售地点': ['北京', '上海', '北京', '上海', '北京']}

df = pd.DataFrame(data)

# 使用Groupby对数据进行分组并计数

result = df.groupby(['产品类别', '销售地点']).size().reset_index(name='销售数量')

# 输出结果

print(result)

通过这个例子,我们可以清楚地看到使用Pandas的DataFrame和Groupby功能可以轻松地进行分组统计。无论是对于销售数据、用户行为数据还是其他类型的数据,都可以使用这种方法来进行分析和可视化。

举报有用(4)分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号