Pandas实用技巧:SAC机制!

大数据 数据分析
我们将数据进行group分组操作,切分成3种颜色,3种颜色代表3个不同的组别;对3个不同的组别使用函数foo(),函数可以内置或者自定义。

本文转载自微信公众号「尤而小屋」,作者Peter  。转载本文请联系Peter的公众号。

大家好,我是Peter~

本文给大家介绍的是Pandas中非常实用的SAC过程。首先我们需要明白什么是SAC机制

图片

SAC

SAC指的是分组操作中的 Split-Apply-Combine 3个过程,分别代表的数据的切割、应用和组合。

1、Split:切割的过程,就是通过某个指定的信息进行分组,生成不同的组别

2、Apply:应用的过程,对不同的组别使用不同的功能函数,比如求和、求均值、最值等;函数可以python、pandas等内置函数,也可以是自定义的函数来实现各种功能等

3、Combine:组合的过程,将Apply应用之后的结果再次组合在一起,得到最终的结果

通常情况下,SAC过程都是需要和groupby函数联合使用。

图解SAC

下面有两张图能够解释SAC的过程。

图片

图1

图1中,我们将数据进行group分组操作,切分成3种颜色,3种颜色代表3个不同的组别;对3个不同的组别使用函数foo(),函数可以内置或者自定义。

最终将3个组别应用了foo函数之后的结果进行组合。下面给了一个例子:

图片

图2

  • key是待切分的字段,data是待应用的数据
  • Split过程:通过ABC分成3个组别
  • Apply过程:3个组别应用某个函数规则
  • Combine过程:将求和(sum就是指定规则)的结果组合在一起

Pandas应用SAC

在这里我们使用鸢尾花iris数据集来解释:

import pandas as pd
import numpy as np
import seaborn as sns

iris = sns.load_dataset("iris")
iris.head() # 前5条

图片

iris.shape

# (150,5

这个数据集总共是150条,我们随机取出10条

图片

下面是SAC过程:

图片

df1中我们使用的求和,df2中使用的是求均值。

在后面的文章会介绍:

  • groupby对象的内部机制
  • 如何通过agg函数来实现对不同的字段指定不同的函数
  • 如何对分组数据实现过滤filter​
责任编辑:武晓燕 来源: 尤而小屋
相关推荐

2009-12-21 15:50:39

2009-09-04 10:27:28

Linux实用技巧linux操作系统linux

2022-03-23 09:18:10

Git技巧Linux

2009-01-03 09:34:30

ASP.NET.NET性能优化

2011-04-08 15:40:01

Oracle认证

2022-10-11 08:00:47

多线程开发技巧

2009-12-23 17:32:35

Linux构建软路由

2019-10-10 16:31:51

PyCharmPythonWindows

2019-11-25 10:12:59

Python技巧工具

2009-12-09 11:21:30

Linux实用技巧

2010-10-08 15:44:17

vim

2010-09-14 10:41:24

DIV+CSS排版

2019-12-22 23:10:19

LinuxSSH加密

2011-03-23 16:49:17

LAMP技巧linux命令

2012-08-28 08:54:16

Windows Ser

2010-01-14 10:18:24

VB.NET List

2024-03-28 08:15:09

Spring技巧配置

2010-11-02 15:36:30

jQuery

2022-05-30 09:01:13

CSS技巧前端

2019-10-12 15:42:36

CSS代码前端
点赞
收藏

51CTO技术栈公众号