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

Pandas如何将DataFrame子列行与主列匹配值对齐得到规整数据

解决方案

直接处理现有out的方法

按keys_master字段分组,合并同组内的非空值即可,代码如下:

out = out.groupby('keys_master', as_index=False).first(numeric_only=True)

更简洁的初始生成方案(推荐)

你可以跳过原来的循环拼接逻辑,直接用pivot方法一步生成目标表,避免中间产生冗余行:

# 按key索引、variable列维度展开所有字段
out = df.pivot_table(
    index='key',
    columns='variable',
    values=['key', 'i', 'j', 'k'],
    aggfunc='first'
)
# 调整列名格式为「字段名+变量标识」
out.columns = [f'{col[0]}{col[1]}' for col in out.columns]
# 重置索引得到keys_master列
out = out.reset_index(names='keys_master').reset_index(drop=True)

两种方法运行后都能得到你需要的结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 07:00:02