Pandas数据分组统计的实现示例

 更新时间:2023年11月26日 10:47:30   作者:GarsonW  
对数据进行分组统计,主要适用DataFrame对象的groupby()函数,本文就来详细的介绍下Pandas数据分组统计的实现,具有一定的参考价值,感兴趣的可以了解下

1.分组统计groupby()函数

对数据进行分组统计,主要适用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.通过字典进行分组统计

创建字典,df.groupby()函数通过字典内信息分组。 

import pandas as pd  #导入pandas模块
#解决数据输出时列名不对齐的问题
pd.set_option('display.unicode.east_asian_width', True)
df=pd.read_csv('JD.csv',encoding='gbk')  #导入csv文件
df=df.set_index(['商品名称'])
#创建字典
mapping={'北京出库销量':'北上广','上海出库销量':'北上广',
         '广州出库销量':'北上广','成都出库销量':'成都',
         '武汉出库销量':'武汉','西安出库销量':'西安'}
df1=df.groupby(mapping,axis=1).sum()
print(df1)

2.通过Series对象进行分组统计

创建一个Series对象,然后将Series对象传给groupby()函数实现数据分组。Series对象内放索引+值:如'北京出库销量',对应值'北上广'。

import pandas as pd  #导入pandas模块
#解决数据输出时列名不对齐的问题
pd.set_option('display.unicode.east_asian_width', True)
df=pd.read_csv('JD.csv',encoding='gbk')  #导入csv文件
df=df.set_index(['商品名称'])
data={'北京出库销量':'北上广','上海出库销量':'北上广',
         '广州出库销量':'北上广','成都出库销量':'成都',
         '武汉出库销量':'武汉','西安出库销量':'西安',}
s1=pd.Series(data)
print(s1)
df1=df.groupby(s1,axis=1).sum()
print(df1)

到此这篇关于Pandas数据分组统计的实现示例的文章就介绍到这了,更多相关Pandas 分组统计内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用Python轻松构建一个Windows11系统智能垃圾清理系统

    使用Python轻松构建一个Windows11系统智能垃圾清理系统

    Windows 11虽然引入了存储感知,但在面对深层开发缓存、老旧更新残留及特定应用日志时往往力不从心,本文将详解如何使用Python编写一套安全、智能、可配置的自动化清理脚本,有需要的小伙伴可以了解下
    2026-01-01
  • 详细分析python3的reduce函数

    详细分析python3的reduce函数

    小编给大家整理了python3的reduce函数详细用法以及相关的技巧,需要的朋友们参考一下吧。
    2017-12-12
  • Python实现批量Excel拆分功能

    Python实现批量Excel拆分功能

    在日常办公中,我们经常需要将包含多个Sheet页的Excel文件拆分成多个独立的Excel文件,下面我们就来看看如何使用Python实现批量Excel拆分的功能吧
    2025-02-02
  • python实现图像边缘检测

    python实现图像边缘检测

    这篇文章主要为大家详细介绍了python实现图像边缘检测,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-08-08
  • Python将字符串转换为datetime对象的五种方法

    Python将字符串转换为datetime对象的五种方法

    在Python编程中,我们经常会遇到需要将字符串形式的日期和时间转换为datetime对象的情况,例如,从文件、数据库或网络接口中获取的数据通常是以字符串形式存在的,使用datetime对象会更加方便,所以本文给大家总结Python将字符串转换为datetime对象的五种方法
    2025-07-07
  • Pandas.DataFrame删除指定行和列(drop)的实现

    Pandas.DataFrame删除指定行和列(drop)的实现

    本文主要介绍了Pandas.DataFrame删除指定行和列(drop)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Pytest多环境切换的常见方法介绍

    Pytest多环境切换的常见方法介绍

    Pytest 作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进行选择
    2025-04-04
  • Python实现网络通信的HTTP请求Socket编程Web爬虫方法探索

    Python实现网络通信的HTTP请求Socket编程Web爬虫方法探索

    随着互联网的不断发展,Python作为一门多用途的编程语言,提供了强大的工具和库来进行网络连接和通信,本文将深入探讨Python中连接网络的方法,包括HTTP请求、Socket编程、Web爬虫和REST API的使用
    2024-01-01
  • 教你在Excel中调用Python脚本实现数据自动化处理的方法

    教你在Excel中调用Python脚本实现数据自动化处理的方法

    Excel是全世界最流行的编程语言,Excel已经可以实现编程语言的算法,因此它是具备图灵完备性的,和JavaScript、Java、Python一样,今天通过本文给大家介绍下Python数据自动化处理的相关知识,感兴趣的朋友一起看看吧
    2022-02-02
  • python计算两个数的百分比方法

    python计算两个数的百分比方法

    今天小编就为大家分享一篇python计算两个数的百分比方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06

最新评论