开发者学堂课程【Python 常用数据科学库:groupby 操作】学习笔记,与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/546/detail/7480
groupby 操作
1.定义:
在使用 python 进行数据分析的过程中,采用 groupby 函数对数据进行分组是一项很常用的操作,它可以帮助我们更清晰地了解我们所用数据的组成及规律,本节将为大家简单介绍一下如果使用 groupby 函数对数据进行分组的具体做法。
In [1]: import pandas as pd
df = pd.DataFrame({'key':['A','B','C','A','B','C','A','B','C'],
'data': [0, 5, 10, 5, 10, 15, 10, 15, 20]})
Df
//key 相当于一个标签,'A','B','C'相当于三个品牌,把 key 传进去,看看对应当前key 是不是一样的,之后把 key 回传到索引中,最后求出 sum 和。由此可以看出ABC 的累加和,是45.
In [2]: for key in ['A','B','C']:
print (key,df [df['key'] == key].sum())
先写一个函数,split 将前面的分成三块A B C ,然后 apply 进行分组算和,最后加在一起。
//用 groupby 的方法,快速简单得到和。这样在数据上做一些数据统计就比较方便,还可以指定 numpy 的操作,那样就不是 sum,而是 aggregate。总值平均值都可以求。
In [3]: df.groupby('key').sum()
In [5]:import numpy as np
df. groupby('key').aggregate (np. sum)
In [6]:import numpy as np
df.groupby('key').aggregate (np.mean)
In [7]: df = pd.read_csv(‘./data/titanic.csv')
In [8]: df. groupby ('Sex') ['Age'].mean()
//查看男性和女性的年龄
In [10]: df. groupby('Sex') ['Survived']. mean()
//统计男性女性的获救概率
//执行这样的操作非常方便,就是用格外统计数据来说,可以统计数据当中,很多个指标进行分析。
2.操作步骤:
(1)、分缩,(2)、打开,(3)、结合