从基本示例到实际练习
![充分利用Pandas的GroupBy功能 四海 第1张-四海吧 Alex Suprun在Unsplash上的照片。](https://ai.miximages.com/miro.medium.com/v2/resize:fit:640/format:webp/1*6Fcc7gweknneAS5D833zGg.jpeg)
Python的pandas库包含许多用于查询和操作数据的工具,其中一个强大的功能是GroupBy函数。该函数可以按照不同的类别对观测结果进行分组和聚合。
这一开始可能听起来有些困惑,但本指南将介绍如何使用该函数及其各种功能。本指南包括以下内容:
- GroupBy简介。
- 将GroupBy应用到实际数据集中。
- 各种GroupBy技巧。
- 实际练习和应用。
代码和数据:
本指南中使用的数据和带有完整Python代码的Jupyter笔记本可在链接的github页面上获得。下载或克隆存储库以便跟随操作。本指南使用了作者为本文生成的带有虚假姓名的合成数据,数据可在链接的github页面上获得。
代码需要以下库:
#数据处理
import pandas as pd
import numpy as np
#数据可视化
import plotly.express as px
1.1 开始 – 数据加载和GroupBy基础
第一步是加载数据集:
# 加载数据:df = pd.read_csv('StudentData.csv')df.head(3)
这将得到包含关于在学校参加一系列测试的学生信息的数据框。其中包括他们的年龄、三次测试成绩、他们的课程开始时间、平均成绩、字母成绩以及他们是否通过等信息:
![充分利用Pandas的GroupBy功能 四海 第2张-四海吧 作者的截图](https://ai.miximages.com/miro.medium.com/v2/resize:fit:640/format:webp/1*PoTgPVh1hfzleMglwW6G2w.png)
Pandas的GroupBy允许将数据框拆分为感兴趣的元素,并对其应用某种函数。最简单的理解GroupBy的方法是提出一个GroupBy操作可以解决的问题。一个简单的起点是询问有多少学生通过了课程:
df.groupby('CoursePass')['CoursePass'].count()