#Python 利用pivot_table,数据透视表进行数据分析

python,利用,pivot,table,数据,透视,进行,数据分析 · 浏览次数 : 534

小编点评

**1.1 pivot_table 参数列表** ```python pandas.pivot_table(data, values=None, index=None, columns=None, aggfunc=‘mean’, fill_value=None, margins=False, dropna=True, margins_name=‘All’, observed=False, sort=True) ``` **1.2 常用参数释义** * `data`:要进行数据透视的数据values。 * `values`:要计算的列名。 * `index`:数据索引字段名。 * `columns`:数据列名。 * `aggfunc`:要计算的函数,例如求和、平均、计数。 * `fill_value`:填充缺失值的方法。 * `margins`:是否包含分组字段在计算中。 * `dropna`:是否计算全为NaN的数据。 * `margins_name`:分组字段名。 * `observed`:是否保留原数据索引。 * `sort`:对values结果进行排序。 **1.3 案例操作** ```python import pandas as pd import numpy as np # 设置文件路径和输出路径 path = r'E:/360MoveData/Users/B/Desktop/py案例excel.xlsx' path_out = r'E:/360MoveData/Users/B/Desktop/py案例数据输出11.xlsx' # 读取数据 data = pd.read_excel(path) # 调用 pivot_table模块,数据透视 data1 = pd.pivot_table(data, values =[\"入店数\",\"下单数\"], index =[\"日期\",\"门店所在城市\"], aggfunc=(np.sum) ) # 打印结果 print(data.shape) print(data.head()) ```

正文

  前面我们分享了,利用python进行数据合并和连接,但是工作中,我们往往需要对数据进一步的聚合或者运算,以求最后的数据结果。

今天我们就来学习一下利用pandas模块,对数据集进行数据透视分析。

pivot_table释义

1.1  pivot_table参数列表:

  pandas.pivot_table(data, values=None, index=None, columns=None, aggfunc=‘mean’, fill_value=None, margins=False, dropna=True, margins_name=‘All’, observed=False, sort=True)

同样可以写成:
data.pivot_table(’ data列名’,index,columns,aggfunc…)

 

1.2   常用参数释义:

data:要进行数据透视的数据
values:要做计算的数据 ,对谁求和/求均值/计算个数等
index:确定行参数,可以是多个。单个’‘,多个[’‘,’‘]表示
columns:确定列参数,可以是多个。单个’‘,多个[’‘,’']
aggfunc:要计算的函数,mean求均值、sum求和、size计算个数
dropna:表示是否计算全为NaN的数据。bool类型,默认True 不计算
sort:对values结果进行排序。bool类型 默认False 升序

1.3   案例操作:

实际操作,首先导入pd 和 np 库

首先准备一个实验数据集,表头如下

 

 

import pandas as pd 
import numpy as np

 设置文件路径和输出路径

path = r'E:/360MoveData/Users/B/Desktop/py案例excel.xlsx'
path_out = r'E:/360MoveData/Users/B/Desktop/py案例数据输出11.xlsx'

1读取数据

data = pd.read_excel(path)
print(data.shape)
print(data.head())

2调用pivot_table模块,数据透视

'''
pd.pivot_table来调用数据透视,
index可以看做是pq中的分组依据字段
values可以看做是pq中的列字段
aggfunc分别是求和aggfunc=(np.sum),求平均aggfunc=(np.mean),计数aggfunc=(len),可以看做是excel透视表的值字段设置-计算类型
pivot_table模组的意义在于,大数据下的维度收缩,当数据源过于庞大时,通过py处理csv合集,解决处理过程的大数据问题,而pivot_table
可以在最后一步进行数据维度收缩,这有利于我们将大数据转为较小的数据集,最终配合excel去进行数据分析
'''

data1 = pd.pivot_table(data,
                       values =["入店数","下单数"],
                       index =["日期","门店所在城市"],
                       aggfunc=(np.sum)
                      ) 

输出结果如下:

配合上篇文章分享的数据合并功能,我们可以自由的对零散的数据集,进行组合、拼接,配合今天学的数据透视,又可以对合并后的数据集进行分组统计。
这个过程类似  分散-集中-压缩处理,在博主的工作中相当实用,希望有兴趣的大家也可以应用到实际工作中。
我是simone,期待下次的分享。(下次会分享powerbi相关的可视化对象内容)

与#Python 利用pivot_table,数据透视表进行数据分析相似的内容:

#Python 利用pivot_table,数据透视表进行数据分析

前面我们分享了,利用python进行数据合并和连接,但是工作中,我们往往需要对数据进一步的聚合或者运算,以求最后的数据结果。 今天我们就来学习一下利用pandas模块,对数据集进行数据透视分析。 pivot_table释义 1.1 pivot_table参数列表: pandas.pivot_tabl

#Python 利用pandas 合并csv/xlsx文件

上次我们分享了利用powerquery来合并文件进行数据分析,但是Pq有一部分局限性,在现实工作中,我们往往需要合并多个文件去处理数据, 如果面对20个甚至更多的文件,pq中的每一步的步骤都会去读取每个文件,运行速度会十分慢,那么有没有简单的解决方法吗? 答案是:可以考虑合并成一个文件后来处理。 我

#Python基础 利用Pyinstaller 模块对python代码进行打包exe

一般我们都用 Python 的 Pyinstaller 模块进行打包,这里记录Pyinstaller 模块进行打包。 一:安装 Pyinstaller 模块 pip install PyInstaller 二:打开cmd(win+R) 三:操作 3.1 切换路径(这里示例文件在E盘) 输入E:来切换

[转帖]利用Python调用outlook自动发送邮件

↓↓↓欢迎关注我的公众号,在这里有数据相关技术经验的优质原创文章↓↓↓ 使用Python发送邮件有两种方式,一种是使用smtp调用邮箱的smtp服务器,另一种是直接调用程序直接发送邮件。而在outlook中我们一般是没有权限去开启smtp服务的,所以一般只能通过第二种直接调用方式发送邮件 基础版本–

[转帖]利用Python调用outlook自动发送邮件

↓↓↓欢迎关注我的公众号,在这里有数据相关技术经验的优质原创文章↓↓↓ 使用Python发送邮件有两种方式,一种是使用smtp调用邮箱的smtp服务器,另一种是直接调用程序直接发送邮件。而在outlook中我们一般是没有权限去开启smtp服务的,所以一般只能通过第二种直接调用方式发送邮件 基础版本–

#Python pandas库,读取模块,代码笔记

日常数据清洗中,利用python清洗的第一步就是读取对应文件,今天一起复盘一下数据读取环节的常规操作。 csv和xlsx格式读取类似,所以用csv做案例 X-MIND图

基于遗传算法的地图四色原理绘图上色的Python代码

本文介绍利用Python语言,实现基于遗传算法(GA)的地图四色原理着色操作~

Python核对遥感影像批量下载情况的方法

本文介绍批量下载遥感影像时,利用Python实现已下载影像文件的核对,并自动生成未下载影像的下载链接列表的方法~

Python 调整PDF页面尺寸大小

在处理PDF文件时,我们可能会遇到这样的情况:原始PDF文档不符合我们的阅读习惯,或者需要适配不同显示设备等。这时,我们就需要及时调整PDF文档中的页面尺寸,以满足不同应用场景的需求。 利用Python语言的高效性和灵活性,再结合Spire.PDF for Python 库的强大功能,我们可以通过P

#Python实例 计算外卖配送距离(基于百度API接口)---第二篇

https://www.cnblogs.com/simone331/p/17218019.html 在上一篇中,我们计算了两点的距离(链接为上篇文章),但是具体业务中,往往会存在一次性计算多组,上百甚至上千的距离。 所以我们需要利用python函数,批量去处理和传参,批量计算距离。前面的操作去第一篇