python group by函数

在Python中,groupby函数是pandas库中的一个非常实用的功能,它可以帮助我们对数据进行分组操作,通过使用groupby函数,我们可以方便地对数据进行聚合、转换和过滤等操作,本文将详细介绍groupby函数的使用方法。

基本用法

1、创建DataFrame

python group by函数

我们需要创建一个DataFrame,用于演示groupby函数的使用,以下是一个简单的示例:

import pandas as pd
data = {'A': ['foo', 'bar', 'baz', 'foo', 'bar', 'baz'],
        'B': ['one', 'two', 'three', 'two', 'three', 'one'],
        'C': [1, 2, 3, 4, 5, 6],
        'D': [10, 20, 30, 40, 50, 60]}
df = pd.DataFrame(data)

2、使用groupby函数

接下来,我们可以使用groupby函数对数据进行分组,以下是一些常见的用法:

按单列分组:

grouped = df.groupby('A')

按多列分组:

grouped = df.groupby(['A', 'B'])

按条件分组:

grouped = df[df['C'] > 2].groupby('A')

聚合操作

在对数据进行分组后,我们可以对每个组进行聚合操作,例如求和、计数、平均值等,以下是一些常见的聚合操作:

1、求和:

python group by函数

result = grouped['D'].sum()

2、计数:

result = grouped['D'].count()

3、平均值:

result = grouped['D'].mean()

4、最大值:

result = grouped['D'].max()

5、最小值:

result = grouped['D'].min()

转换操作

在对数据进行分组后,我们还可以进行一些转换操作,例如对每个组的数据应用一个函数,以下是一些常见的转换操作:

1、应用函数:

def square(x): return x ** 2
result = grouped['D'].apply(square)

2、应用多个函数:

def square(x): return x ** 2
def double(x): return x * 2
result = grouped['D'].apply([square, double])[0]

过滤操作

在对数据进行分组后,我们还可以对每个组进行过滤操作,例如筛选出满足某个条件的数据,以下是一些常见的过滤操作:

python group by函数

1、筛选出满足条件的数据:

result = grouped[grouped['D'] > 30]['D']

2、筛选出不满足条件的数据:

result = grouped[grouped['D'] <= 30]['D']

排序操作

在对数据进行分组后,我们还可以进行排序操作,例如按照某个列的值对每个组进行排序,以下是一些常见的排序操作:

1、按照单个列排序:

result = grouped.sort_values('A')['D']

2、按照多个列排序:

result = grouped.sort_values(['A', 'B'])['D']

3、按照降序排序:

result = grouped.sort_values('A', ascending=False)['D']

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/245032.html

(0)
K-seoK-seoSEO优化员
上一篇 2024年1月22日 15:08
下一篇 2024年1月22日 15:08

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入