You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

加载含多层表头的时间序列DataFrame并转换为可绘图的长表格式

方案1:直接基于现有多层表头DataFrame绘图

如果仅需要快速查看单个整流器的电压/电流趋势、或所有整流器同一指标的分布,无需额外转换即可直接绘图,示例代码如下:

import pandas as pd
import matplotlib.pyplot as plt

# 示例:查看编号为R01的整流器的电流随时间变化趋势
df.loc['R01', pd.IndexSlice[:, 'Amps']].plot()
plt.title('整流器R01电流变化趋势')
plt.ylabel('电流(Amps)')
plt.show()

注:代码中pd.IndexSlice用于多层索引筛选,第一个参数匹配第一级列(日期),第二个参数匹配第二级列(指标)

方案2:转换为长表格式(更推荐,适配绝大多数绘图、分析需求)

仅需几行代码即可完成格式转换,得到你需要的四字段长表结构:

# 堆叠多层列索引,将日期从列头转为行维度
df_long = df.stack(level=0, future_stack=True).reset_index()
# 重命名列名
df_long.columns = ['Rectifier', 'Date', 'Volts', 'Amps']
# 可选:将日期列转为datetime格式,方便后续时间维度分析
df_long['Date'] = pd.to_datetime(df_long['Date'])

转换后使用任意可视化库绘图都非常便捷,例如用seaborn绘制所有整流器的电压趋势:

import seaborn as sns
sns.lineplot(data=df_long, x='Date', y='Volts', hue='Rectifier')
plt.show()

内容的提问来源于stack exchange,提问作者MasterStack880

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 07:48:02