You need to enable JavaScript to run this app. Python DataFrame相似列名每3个分组批量重命名实现
优惠活动
大模型
产品
解决方案
定价
更多

Python DataFrame相似列名每3个分组批量重命名实现

调整后的列重命名实现代码
cols = []
# 初始化两个计数变量
scenario_count = 1
subject_id = 1

for column in df.columns:
    if column == 'Stabilized Roll':
        # 按规则生成新列名
        renamed_col = f'subject {subject_id} Stabilized Roll_scenario{scenario_count}'
        cols.append(renamed_col)
        # 组内计数累加
        scenario_count += 1
        # 每满3个列触发组切换
        if scenario_count > 3:
            subject_id += 1
            scenario_count = 1
        continue
    # 非目标列直接保留原名称
    cols.append(column)

df.columns = cols

逻辑说明

  • 替换原代码的单计数逻辑,新增scenario_count(组内场景序号)、subject_id(组别编号)两个独立计数器
  • 只有匹配到Stabilized Roll列时才触发计数逻辑,非目标列不参与计数流程,完全保留原名
  • 当组内计数到3后,自动递增组别编号、把组内计数重置为1,实现每3个匹配列划分为一组的循环逻辑

匹配效果验证

针对6个连续Stabilized Roll列的输入场景,代码输出的列名完全符合预期规则:

  • 第1-3个匹配列依次命名为subject 1 Stabilized Roll_scenario1、subject 1 Stabilized Roll_scenario2、subject 1 Stabilized Roll_scenario3
  • 第4-6个匹配列依次命名为subject 2 Stabilized Roll_scenario1、subject 2 Stabilized Roll_scenario2、subject 2 Stabilized Roll_scenario3

注:该逻辑不受匹配列是否连续的影响,只要是匹配名称的列,都会按照出现顺序归入对应组别,适配列顺序微调的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.27 01:57:04