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

如何在pandas中将m×n格式DataFrame转换为k×2格式DataFrame

解决方案

你可以通过以下两种常用方法实现转换:

方法1:concat拼接法(逻辑简单,易调试)

分别提取每组日期+金额字段,重命名为统一列名后拼接即可:

import pandas as pd

# 假设你的原DataFrame变量名为df
df_part1 = df[["date1", "amt1"]].rename(columns={"date1": "date", "amt1": "amt"})
df_part2 = df[["date2", "amt2"]].rename(columns={"date2": "date", "amt2": "amt"})
res_df = pd.concat([df_part1, df_part2], ignore_index=True)

方法2:wide_to_long法(适配多组日期金额对的场景)

如果你后续还有date3/amt3、date4/amt4这类多组字段,用这个方法不用修改代码,适配性更强:

res_df = pd.wide_to_long(
    df.reset_index(),
    stubnames=["date", "amt"],
    i="index",
    j="group_num"
)[["date", "amt"]].reset_index(drop=True)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 22:27:02