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

如何在Pandas dataframe每类第2列值的首行前插入对应固定值行

实现方法

核心思路是对第2列分组后,给每个分组拼接对应表头行再合并,实现逻辑简单,代码量少:

import pandas as pd

# 此处替换为你自己的原始DataFrame变量名,若已经加载过df可以跳过读取步骤
raw_df = pd.read_csv("你的数据源路径")

def insert_group_header(group_df):
    # 构造分组头部行:第0列为分组键(第2列的值),第3列为对应分组的file值,其余列为空
    header = pd.DataFrame(
        [[group_df.name, "", "", group_df[3].iloc[0]]],
        columns=raw_df.columns
    )
    # 拼接头部行和当前分组的原始数据
    return pd.concat([header, group_df], ignore_index=True)

# 按第2列分组后应用处理函数,最后重置全局索引
result_df = raw_df.groupby(2, group_keys=False).apply(insert_group_header).reset_index(drop=True)

补充说明

  • 如果你希望空值显示为NaN而非空字符串,把代码里的""替换为pd.NA即可
  • 逻辑默认同一个分组的第3列值相同,所以直接取分组内第3列第一个值即可满足需求
  • 处理后的result_df就是你需要的最终结构,后续直接按第3列分组拆分保存文件即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 20:54:02