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

如何使用Pandas按条件将含Chq编号的行与其上一行合并为一行

实现方案

下面提供3种不同场景下可直接运行的实现方案:

  • 方案1:awk命令行(最快的纯命令行处理方案)
    直接对输入文件执行以下命令即可输出目标结果:
    awk '/^Chq/ {print prev, $0; prev=""} prev != "" {print prev} {prev = $0}' 你的输入文件路径 > 输出文件路径
    处理逻辑:

    1. 读取每行时先判断是否以Chq开头
    2. 是则拼接上一行缓存内容输出,清空缓存
    3. 否则先输出上一行缓存的非Chq内容,再把当前行存入缓存
  • 方案2:Python脚本(适合需要集成到代码中的场景)
    复制以下代码运行即可:

    # 替换为你的输入输出文件路径
    input_path = "input.txt"
    output_path = "output.txt"
    
    with open(input_path, "r", encoding="utf-8") as f:
        lines = [line.rstrip("\n") for line in f]
    
    result = []
    prev_line = ""
    for line in lines:
        if line.startswith("Chq"):
            result.append(f"{prev_line} {line}")
            prev_line = ""
        else:
            if prev_line:
                result.append(prev_line)
            prev_line = line
    # 处理最后一行非Chq的情况
    if prev_line:
        result.append(prev_line)
    
    with open(output_path, "w", encoding="utf-8") as f:
        f.write("\n".join(result) + "\n")
    
  • 方案3:sed命令行
    命令如下:
    sed '/^Chq/{x;G;s/\n/ /;b};x;/./p;${x;p}' 你的输入文件路径 > 输出文件路径
    核心是利用sed的暂存空间缓存上一行内容,匹配到Chq行时拼接输出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 08:15:05