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

如何将宽格式时间序列DataFrame转为长格式用于时序分析?

宽格式转长格式DataFrame的实现方法

完全可以实现这个转换,用Pandas的melt()方法就能轻松完成,这是处理宽表转长表的标准工具。

具体操作步骤:

  1. 导入Pandas并构造示例宽格式DataFrame:
import pandas as pd

df = pd.DataFrame({
    'latitude': [37.8766, 35.4578],
    'longitude': [30.5677, 30.7843],
    '2005': [50.356, 35.789],
    '2006': [70.435, 30.876],
    '2007': [60.367, 20.432]
})
  1. 使用melt()方法完成格式转换:
long_df = df.melt(
    id_vars=['latitude', 'longitude'],  # 指定保持不变的标识列
    var_name='year',  # 原年份列名转换后的新列名
    value_name="year'value"  # 对应数值的列名
)

转换后的长格式结果:

latitudelongitudeyearyear'value
37.876630.5677200550.356
35.457830.7843200535.789
37.876630.5677200670.435
35.457830.7843200630.876
37.876630.5677200760.367
35.457830.7843200720.432

如果之前重塑失败,大概率是没正确设置id_vars参数——这个参数用来标记不需要被"融化"的列,必须明确指定才能得到你想要的结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 03:25:56