数据透视表|学习笔记

简介: 快速学习数据透视表

开发者学堂课程【Python 常用数据科学库:数据透视表】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/546/detail/7486


数据透视表

如何做数据透视表

(一)

image.png

这是一份消费数据,在每个月份都有一些花费,比如在交通上的花费,在娱乐上、在家庭上的花费,这里都有花费的指标。

要对这个数据做一个统计,只不过这次统计不单单是两个变量之间,而是要考虑三个变量之间,或者说要考虑一个像数据透视表之类的结构。

1、先写一下 example 的表格,要执行这样的操作,需要指定几个关键的属性,第一个叫做 index,index 是需要自己指定的,相当于以谁为键,现在要统计的是不同种类的花销,以它建写出来,还需要一个列,把列指定成月份,相当于是统计一个指标,然后按照什么方式去统计。最后有个 values,相当于你要统计这个指标的什么属性,这里只有一个属性,就是花费,把花费再挪过来

example_pivot = example.pivot(index ='Category', columns='Month',values='Amount'

example_pivot

然后打印一下,这样就得到一个表格,这就是数据透视表。这就完成了第一件事——先做出来一个最基本的数据透视表。

image.png

这里重要的一点是有个 index 值,有个列名,有一个数值,这个就是根据你想统计的指标,自己指定就可以了。

2、基于这个表还可以再去执行一些操作,比如说可以求它的和

example_pivot.sum(axit=1)

image.png

当指定成零的时候,example_pivot.sum(axit=1)

运行

image.png

就是不同的月份又进行了一个指定,也就是说统计了不同月份的花销分别是多少。统计完这些指标之后,现在按行按列都能统计,这就是最基本的一个数据透视表。

(二)

image.png

1、可以自己来指定一下统计指标,比如说想看不同的性别在不同的船舱等级,以及它的一个平均船票价格是什么样的,也就是男性在一等舱平均的花费,女性在一等舱平均话费以及在二等舱、三等舱。Index 值指定成性别 Sex,第二列写的是船舱的等级 Pclass,再把要统计的数值给指定出来,这里统计的是价格 Fare。

df.pivot_table (index ='Sex',columns='Pclass',values='Fare')

执行一下

image.png

就得到这个结果,性别有女性有男性,女性在一等舱、二等舱、三等舱平均的船票价格,男性在一等舱、二等舱、三等舱平均的船票价格,这个就是数据透视表。

刚刚是统计平均的价格,但是没有去指定平均,所以说这里是默认求平均值,但如果需求变了,要求男性和女性在123等舱当中最大的船费花销是多少,就需要再加上一个参数, 把它指定成 max

df.pivot_table(index ='Sex',columns='Pclass' values='Fare',aggfunc=' max')

运行看到结果

image.png

2、求人数,女性在一等舱的人数,男性在一等舱的人数  

指定 Count,相当于计数,这样就能得到人数分别是多少。除了这种方法,还有一个叫做 crosstab,

执行后的结果和上一个一样

pd.crosstab (index =df['Sex'],columns=df['Pclass']

如果要统计某一个键的一个指标,在某个列上它的分布情况,我们就可以用crosstable 来进行指定。

3、再来统计一些其他指标。看船舱的等级,在不同的性别上获救的情况,求它的均值

df['Underaged'] = df[' Age'] <= 18

df.pivot_table( index='Underaged’,columns= 'Sex',values='Survived',aggfunc='mean'),

执行一下得到这样一个表格

image.png

在这个表格当中统计了两个量。第一个就是对于不同的船舱等级,女性和男性平均获救几率是有多大的,结果显示一等舱里女性获救几率96%,男性36%,相对来说比较贵的船舱等级,获救几率会比较高,二等舱和三等舱也是一样。在年龄里还可以进行划分,有一类是一个未成年的,看一下未成年人当中,对于性别来说,获救与否的情况。

df.pivot_table(index = 'Pclass', columns= 'Sex',values=' Survived', aggfunc='mean')

然后执行一下就算出来了。可以对数据执行很多种操作,这几个值都是常用的,一个是以什么为建,然后看哪几个列,看列当中的某一个属性能按照什么样的方式去计算,这个就是数据透视表。用起来是很方便的,尤其是在做数据分析统计的时候。

相关文章
|
关系型数据库 MySQL Python
MySql查询出两张表中不同的数据
MySql查询出两张表中不同的数据
142 0
|
计算机视觉
R实战 | 文章第一表:三线表的绘制(下)
R实战 | 文章第一表:三线表的绘制
534 0
R实战 | 文章第一表:三线表的绘制(下)
R实战 | 文章第一表:三线表的绘制(上)
R实战 | 文章第一表:三线表的绘制
336 0
R实战 | 文章第一表:三线表的绘制(上)
|
数据挖掘 开发者 索引
交叉表与透视表| 学习笔记
快速学习交叉表与透视表
456 0
|
数据安全/隐私保护
基于Excel2013的数据透视表
2018年6月20日笔记 数据透视表制作 文件下载链接: https://pan.baidu.com/s/1LAp8mGdVm7-C6prIh9Z2hA 密码: 1r67 文件打开图示.png 选择数据区域,点击下图所示数据透视图按钮。
1034 0
|
缓存 测试技术 C#
C# 操作Excel数据透视表
一、概述 数据透视表(Pivot Table)是一种交互式的表,可以进行某些计算,如求和与计数等,可动态地改变透视表版面布置,也可以重新安排行号、列标和页字段。当改变版面布置时,数据透视表也会按照新的布置来进行更新,可以说是一个功能强大的数据分析工具。
1660 0