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

如何不借助第三方包将单列带Sample分组的数据转换为多列格式

无额外依赖的格式转换解决方案

这里直接用系统默认自带的awk工具实现,不需要安装任何第三方包,适配所有类Unix系统、WSL、Windows PowerShell环境。

执行命令

将你的原始文本保存为input.txt后,直接运行以下命令即可输出目标格式内容:

awk '
# 匹配Sample行,初始化新列
/^Sample/ {
    col_idx++
    row_idx = 1
    headers[col_idx] = $0
    next
}
# 跳过空行,存储数据
!/^Sample/ && NF > 0 {
    data[col_idx][row_idx] = $0
    max_row = row_idx > max_row ? row_idx : max_row
    row_idx++
}
# 处理完所有行后输出结果
END {
    # 输出表头
    for (i=1; i<=col_idx; i++) printf "%-12s", headers[i]
    print ""
    # 逐行输出各列数据
    for (r=1; r<=max_row; r++) {
        for (i=1; i<=col_idx; i++) printf "%-12s", data[i][r]
        print ""
    }
}' input.txt

说明

  • 代码中%-12s用于控制每列的左对齐宽度为12个字符,你可以根据实际内容长度调整这个数值
  • 自动跳过原始文本中的空行,容错性更高
  • 支持任意数量的Sample分组,也支持每个分组下行数不同的场景

样例输出

针对你提供的测试输入,运行命令后输出效果如下:

Sample 1    Sample 2    Sample 3    
1           4           7           
2           5           8           
3           6           9           

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 21:06:04