Pandas数据透视表(pivot_table)的存储与读取
创作时间:
作者:
@小白创作中心
Pandas数据透视表(pivot_table)的存储与读取
引用
CSDN
1.
https://m.blog.csdn.net/m0_47149835/article/details/139301205
在使用Pandas处理数据透视表时,经常会遇到列名多级索引的问题。本文将详细介绍如何创建数据透视表、保存为Excel文件,以及如何正确读取包含多级列索引的Excel文件。
当对某个DataFrame进行pd.pivot_table操作时,输出的透视表的列名会根据参数columns所指定的列内含有的类别进行细分,最终生成到Excel时,列名也会占据多行,虽然提高了肉眼的可读性,但再次用程序加载得到的表并不方便处理。
创建一个DataFrame
import pandas as pd
df = pd.DataFrame(
data={'User': ['Jaye', 'Ben', 'Ben', 'Jaye', 'Leo'],
'Class one?': ['Y', 'N', 'Y', 'Y', 'N'],
'Value': [5, 7.0, 10, 2, 8.8], })
print(df)
输出结果:
User Class one? Value
0 Jaye Y 5.0
1 Ben N 7.0
2 Ben Y 10.0
3 Jaye Y 2.0
4 Leo N 8.8
创建数据透视表
df_pivot = pd.pivot_table(df, index='User', columns='Class one?', aggfunc='sum')
df_pivot.to_excel('testing.xlsx')
仔细观察MultiIndex
pivot_table的columns是MultiIndex,遍历输出后发现它由多个tuple组成,每一个tuple都代表了最细粒度的类别。
输出到Excel并重新读取
通过参数index_col(对应index)和header(对应columns),就可以读取前文已经输出到Excel的数据透视表
pd.read_excel('testing.xlsx', index_col=0, header=[0, 1])
index_col=0表示将第一列设为indexheader=[0, 1]表示将第1~2行作为columns
热门推荐
裸眼视力4.1究竟相当于多少度的近视?如何判断视力与近视度数之间的关系?
葡萄牙黄金签证文件更新通道正式开放,如何抢占先机?
如何去除鱼腥味?这些妙招让你告别口感尴尬
大国竞争时代的制空权如何演变?具体问题要具体分析
左肩痛是什么病的征兆
空调加氟怎么收费一个压多少钱
嗜中性粒细胞百分比偏高的原因
设备技术员岗位职责全解析:16个行业范例详解
2025高考哪些省市用全国卷?哪些省市自主命题?全国卷和自主命题卷的难度比较!
高考有听力但是不算分的省份,高考听力是全国一起考吗?
宿醉解酒吃什么?教你如何解酒、避免宿醉
买房贷款合同丢失的补救措施与重要性
一只眼睛受伤,另一只眼睛真的会瞎吗?
米芾的书法特点,后人如何评价的呢
3岁儿童药物过量的症状
探秘千岛湖:解锁你的水上仙境之旅,不容错过的绝美玩乐攻略!
热力学第二定律的两种表述
揭秘古代称呼猫为狸奴的由来
汽车风阻系数详解:如何实现破风前行?
李白《陌上桑》:赞美罗敷的坚贞自洁与反抗精神
如何排查和修复损坏的文件系统
什么是SaaS市场分析?
电动车真空胎标准胎压是多少
清朝“汉地十八省”:从行政区划看清朝民族政策
健身房退卡纠纷的解决之道:如何通过法律途径维权
六味地黄丸成分有哪些
为什么企业估值可能被低估?这种低估现象对企业发展有何影响?
小建中汤:适宜与禁忌的指南
【求职攻略】2025校招全流程实用攻略,你想了解的都在这!
2025年"七星连珠"即将上演:错过要等15年,一文看清如何观赏、最佳观赏地点