分组与聚合数据
Coddy Pandas 数据分析 课程的第 15 课,共 19 课。
处理大型数据集时,对数据进行分组和聚合非常重要,因为这有助于简化和汇总数据,让数据更容易理解和分析。
在上一课中,我们计算了特定组的统计数据,但如果没有其他工具,计算所有组的统计数据可能会很困难。为此,我们可以使用 .groupby() 方法:
df.groupby('column_name')这会返回一个 GroupBy 对象,按照 column_name 的值对数据框中的行进行分组。你可以对这个 GroupBy 对象应用聚合函数,在各个组内进行计算。
数据分组后,我们可以使用多个聚合函数来汇总数据,例如:
df.groupby('column_name').sum()
df.groupby('column_name').min()
df.groupby('column_name').max()这会返回原始数据框中其他所有数值列的 sum、min 和 max,并按照 column_name 进行划分。
现在,你可以提取正在分析的特定列:
df.groupby('column_name').sum()['other_column']挑战
简单CSV 文件 visits.csv 包含特定时间在特定地点发生的访问次数信息。
以下是文件的前 5 行:
location_id,visits,timestamp
8,1771,27498
9,4187,79919
0,4959,54228
6,7721,41588创建一个包含以下键的字典:min、max、mean、std、sum 和 median,并为每个地点 ID 提供一个 series,其中包含 每个 地点 ID 对应的 visits 列统计数据。
亲手试试
# 已导入 pandas,并将其命名为 pd
df = pd.read_csv("./visits.csv")
# 在下方编写你的代码
sum_visits = df.groupby("location_id").sum()["visits"]
res = {
"min": # 填写
"max": # 填写
"mean": # 填写
"std": # 填写
"median": # 填写
"sum": sum_visits
}
print(res)Pandas 数据分析中的所有课
自己练习: Python 在线编译器