pivot函数excel(pivot函数 python)

pivot函数excel(pivot函数 python)p 1 背景描述 br 透视表是一种能对多维数据进行分析统计的工具 具有筛选处理 分类汇总 优化显示等强大的功能 是 Excel 中最好用的数据分析工具之一 br 在自动化办公中 使用 python 的 pivot table p

大家好,我是讯享网,很高兴认识大家。



 <p>1. 背景描述<br /> 透视表是一种能对多维数据进行分析统计的工具&#xff0c;具有筛选处理、分类汇总&#xff0c;优化显示等强大的功能&#xff0c;是Excel中最好用的数据分析工具之一。<br /> 在自动化办公中&#xff0c;使用python的pivot_table()&#xff0c;搭配合适的聚合函数&#xff0c;就能有效地实现透视表的强大功能&#xff0c;并且能更快速便捷地完成数据统计分析过程。</p> 

讯享网


讯享网

3. 应用示例代码

# 建立数据表
import numpy as np
import pandas as pd 
df = pd.DataFrame({“名称”: [“A”, “B”, “A”, “A”, “B”, “A”],
                   “颜色”: [“红色”, “蓝色”, “红色”, “蓝色”, “蓝色”, “红色”],
                   “尺寸”: [“大”, “大”, “小”, “小”, “大”, “大”],
                   “数量”: [10, 20, 15, 30, 10, 20]})
df








1. 简单的分组分类统计

# 1. 单层统计 – 根据名称分组统计不同颜色的数量总和
table = pd.pivot_table(df, values=“数量”, index=“名称”, columns=“颜色”, aggfunc=np.sum)
table
 


2. fill_value参数:设定fill_value=0: 缺失值充填为0;
marigins 参数:设定margins=True: 对行和列的数据进行统计输出

# 2. 单层统计 – 根据名称分组统计不同颜色的数量平均值
table = pd.pivot_table(df, values=“数量”, index=“名称”, columns=“颜色”, aggfunc=“mean”, fill_value=0, margins=True)
table


 

3. columns参数:传入列表,相当于同时对多个特征进行分类统计

# 3. 复合统计1 - 根据名称分组统计不同颜色和尺寸的数量总和
table = pd.pivot_table(df, values=“数量”, index=“名称”, columns=[“颜色”, “尺寸”], aggfunc=“sum”, fill_value=0,margins=True)
table

4. index参数:传入一个列表,就是相当于进行多层级的分组

# 4. 复合统计2 - 根据名称和大小分组统计不同颜色的数量总和
table = pd.pivot_table(df, values=“数量”, index=[“名称”, “尺寸”], columns=[“颜色”], aggfunc=“sum”, 
                       fill_value=0, margins=True)
table




5. aggfunc参数: 聚合函数可以是函数,函数列表,字典。如果传递的是字典,则健为要聚合的列,值是函数或函数列表。聚合函数可包括:mean(平均值), sum(求和), max(最大值), min(最小值), size(计数), var(方差),std(标准差), median(中位数) 等。

# 5.复合统计3 - 根据名称统计不同颜色的数量总和,以及厚度的标准差
# 为方便演示,加入1新特征厚度值
df[“厚度”] = [2, 5, 1, 2, 4, 5]
table = pd.pivot_table(df, values=[“数量”, “厚度”], index=“名称”, columns=[“颜色”], aggfunc={“数量”: np.sum, “厚度”: np.std}, fill_value=0, margins=True)
table





蓝色框 – 分组计算厚度的标准差
红色框 – 分组同步计算数量的总和
这种方法不但快速便捷,还能在同一个平面内展示不同指标使用不同的统计量计算的结果。

 




小讯
上一篇 2025-05-21 21:01
下一篇 2025-05-14 10:29

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/137661.html