Pandas - 数据分组统计_pandas分组计数

对数据进行分组统计,主要适用DataFrame对象的groupby()函数。其功能如下。

(1)根据特定条件,将数据拆分成组

(2)每个组都可以独立应用函数(如求和函数sum(),均值函数mean()等)

(3)将结果合并到一个数据结构中

示例1:

根据“一级分类”对订单数据进行分组统计求和。

import pandas as pd  #导入pandas模块
df=pd.read_csv('JD.csv',encoding='gbk')
#抽取数据
df1=df[['一级分类','7天点击量','订单预定']]
df1=df1.groupby('一级分类').sum()       #分组统计求和

示例2:

按照图书“一级分类”和“二级分类”对订单数据进行分组统计求和

import pandas as pd  #导入pandas模块
df=pd.read_csv('JD.csv',encoding='gbk')
#抽取数据
df1=df[['一级分类','二级分类','7天点击量','订单预定']]
df2=df1.groupby(['一级分类','二级分类']).sum()    #分组统计求和

示例3:

求各二级分类的七天点击量。首先按“二级分类”分类,而后进行分组统计求和。

df1 = df1.groupby('二级分类')['七天点击量'].sum()

2.对分组数据进行迭代

示例1:

按照“一级分类”分组,并且输出每一分类中的订单数据

# 抽取数据
df1 = df[['一级分类',‘七天点击量’,‘订单预定’]]
for name, group in df.groupby('一级分类')
    print(name)
    print(group)

其中name是‘一级分类’, group是其他数据。因此使用groupby()函数对多列进行分组,那么需要在for循环中指定多列。

3.对分组的某列或多列使用聚合函数

Python也可以实现像SQL中的分组聚合运算操作,主要通过groupby()函数与agg()函数实现。

以下代码实现:

1. 以’一级分类’分组,求分组后的平均值与和

2.以’一级分类’分组,求分组后’七天点击量’的平均值与和,求’订单预定’的和

df1.groupby('一级分类').agg(['mean','sum'])

df1.groupby('一级分类').agg({'七天点击量':['mean','sum'],'订单预定':['sum']})

我们可以通过自定义函数实现数组分组统计。书本p110

以下代码实现:

1.统计一月份销售数据中,购买次数最多的产品,及其人均购买数,人均花费,总购买数,总花费。

df = pd.read_excel('1月.xlsx')
max1 = lambda x: x.value_counts(dropna=false).index[0]
df1 = df.agg({'宝贝标题':[max1],
              '数量':['sum','mean'],
              '卖家实际支付金额':['sum','mean']})
print(df1)

4.通过字典和Series对象进行分组统计

1.通过字典进行分组统计

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

VLR-4701988631693)]
[外链图片转存中…(img-keDZODjw-4701988631693)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 使用 Pandas 的 `groupby()` 函数可以对数据进行分组。 例如: ``` import pandas as pd # 假设有一个包含多行多列的数据框(DataFrame) df = pd.DataFrame({'A': [1, 1, 2, 2], 'B': [3, 3, 4, 4], 'C': [5, 6, 7, 8]}) # 使用 A 列进行分组 grouped = df.groupby('A') # 对每组数据执行聚合运算(例如求和、平均值等) print(grouped.sum()) print(grouped.mean()) ``` 输出结果如下: ``` B C A 1 6 11 2 8 15 A B C 1 3.000000 5.500000 2 4.000000 7.000000 ``` 上面的代码将数据框按 A 列的值进行了分组,然后对每组数据分别求和和平均值。你也可以使用其他聚合运算,例如 `min()`、`max()`、`count()` 等。 希望这对你有帮助! ### 回答2: pandas是一个功能强大的Python数据分析库,可以方便地对数据进行处理和分析。其中的分组功能可以帮助我们对数据进行分组后的统计操作。 分组数据统计可以实现多种不同的功能,比如计算每个分组的总和、平均值、最大值、最小值等等。下面是使用pandas进行分组数据统计的基本步骤: 1. 导入pandas库:首先,我们需要导入pandas库,可以使用以下代码: ```python import pandas as pd ``` 2. 读取数据:接下来,我们需要读取要进行分组统计数据。可以使用pandas提供的`read_csv()`函数进行数据的读取: ```python df = pd.read_csv('data.csv') ``` 3. 分组数据:使用pandas的`groupby()`函数进行数据分组,可以根据某一列或多列的值进行分组。下面是根据某一列的值进行分组的示例: ```python grouped_data = df.groupby('column_name') ``` 4. 统计数据分组完成后,我们可以对分组后的数据进行各种统计操作。比如,可以计算每个分组的总和、平均值、最大值、最小值等。下面是计算每个分组的平均值的示例: ```python average_data = grouped_data.mean() ``` 5. 查看结果:最后,我们可以使用`print()`函数或者其他方式查看分组统计的结果: ```python print(average_data) ``` 以上就是使用pandas进行分组数据统计的基本步骤。通过pandas分组功能,我们可以方便地对数据进行分组后的统计操作,从而更好地理解和分析数据。 ### 回答3: Pandas分组数据统计是指使用Pandas库中的groupby函数将数据按照指定的列进行分组,并对每个组进行统计分析的操作。 在Pandas中,我们可以使用groupby函数将数据按照某一列或多列进行分组,形成一个分组对象。然后,我们可以对分组对象进行各种统计操作,比如计算均值、求和、计数等。 例如,我们有一个包含学生姓名、班级和成绩的数据集,我们可以使用groupby函数将数据按照班级进行分组: grouped_data = data.groupby('班级') 然后,我们可以对分组后的数据进行统计分析。比如,我们可以计算每个班级的平均成绩: average_score = grouped_data['成绩'].mean() 我们还可以计算每个班级的总分: total_score = grouped_data['成绩'].sum() 除了常见的统计函数,Pandas还提供了许多其他的函数,可以对分组对象进行更细致的统计分析。比如,我们可以使用describe函数计算每个班级的成绩的五数概括: score_summary = grouped_data['成绩'].describe() 这样我们就可以得到每个班级的最小值、最大值、均值、标准差等统计指标。 总之,Pandas分组数据统计功能可以帮助我们快速对数据进行分组,并完成各种统计分析。它极大地简化了数据统计和分析的过程,提高了数据处理的效率和灵活性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值