📜  按数据分组 - Python (1)

📅  最后修改于: 2023-12-03 15:10:09.029000             🧑  作者: Mango

按数据分组 - Python

在Python中,我们可以使用Pandas库来按数据分组。通过按照某些条件将数据拆分为组,我们可以进行数据聚合,透视表和统计汇总等操作。在本篇文章中,我们将介绍如何使用Pandas来按数据分组并进行基本的分组操作。

基本分组方法

使用Pandas进行数据分组的基本方法是将数据集按照一个或多个列进行分组。具体方法如下:

import pandas as pd

# 读取数据集
df = pd.read_csv('data.csv')

# 按列进行分组
grouped = df.groupby('column_name')

这里,我们使用read_csv()函数从CSV文件中读取数据,然后使用groupby()方法按照指定的列进行分组。接下来,我们可以通过循环遍历每一个组,或者使用聚合函数来对每一个组进行统计汇总等操作。

聚合函数

Pandas内置了各种聚合函数来对每个组进行汇总统计。下面是一些常用的聚合函数和方法:

  • sum() - 求和
  • mean() - 平均值
  • count() - 统计元素个数
  • size() - 每个组的大小
  • describe() - 计算基本的统计量(均值,标准差,最小值,最大值等)
  • agg() - 自定义函数
import pandas as pd

# 读取数据集
df = pd.read_csv('data.csv')

# 按列进行分组
grouped = df.groupby('column_name')

# 求和
grouped.sum()

# 平均值
grouped.mean()

# 统计元素个数
grouped.count()

# 每个组的大小
grouped.size()

# 计算基本的统计量
grouped.describe()

# 自定义函数
def custom_agg(x):
    return x.max() - x.min()

grouped.agg(custom_agg)
多列分组

除了单列分组外,我们还可以使用多列对数据集进行分组操作。具体方法如下:

import pandas as pd

# 读取数据集
df = pd.read_csv('data.csv')

# 按列进行分组
grouped = df.groupby(['column_name_1', 'column_name_2'])

这里,我们可以同时按照列1和列2进行分组。

结论

通过按照一列或多列进行分组,我们可以轻松地对数据集进行数据聚合、透视表和统计汇总等操作。通过使用Pandas内置的各种聚合函数,我们可以快速地计算每个组的统计值。