看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gr99123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(编码题)把季度销量透视表一键熔化成标准长表。原始数据:
import pandas as pd
sales = pd.DataFrame({
'产品': ['手机', '电脑', '平板'],
'一季度': [1500, 800, 600],
'二季度': [1800, 950, 720],
'三季度': [1650, 900, 680],
'四季度': [1900, 1050, 750]
})
用 一行 melt()
把上表转换成标准长表,要求:
产品
作为标识列季度
(原列名)和 销量
(对应数值)代码如下:
melted_sales = sales.melt(
id_vars=['产品'],
value_vars=['一季度', '二季度', '三季度', '四季度'],
var_name='季度',
value_name='销量'
)
print(melted_sales)
运行结果:
产品 季度 销量
0 手机 一季度 1500
1 电脑 一季度 800
2 平板 一季度 600
3 手机 二季度 1800
4 电脑 二季度 950
5 平板 二季度 720
6 手机 三季度 1650
7 电脑 三季度 900
8 平板 三季度 680
9 手机 四季度 1900
10 电脑 四季度 1050
11 平板 四季度 750
(完)
更新时间:2025-09-04 11:14:26 标签:pandas python 透视表 长表