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

如何在保留表头的前提下将表格数值保留三位小数?

解决方案

要保留表头同时将数值列格式化为三位小数,只需修改你的awk脚本,跳过表头行的数值格式化操作,并保持制表符分隔输出(避免用sed替换空格的额外步骤):

命令实现

直接运行以下命令即可完成需求:

grep -v 'NA' TestAllScore.tsv | awk '
BEGIN { FS = "\t"; OFS = "\t" }
NR == 1 { print; next }
{
    for (i=4; i<=NF; ++i) {
        $i = sprintf("%.3f", $i)
    }
    print
}
' > TestAllScore2.tsv

关键改进点

  1. 跳过表头处理:用NR == 1 { print; next }判断第一行(表头),直接输出不做格式化,避免表头被错误转换为数值。
  2. 保持制表符分隔:在BEGIN块中设置FS="\t"(输入分隔符)和OFS="\t"(输出分隔符),确保处理后的文件依然是制表符分隔,无需额外用sed替换空格。
  3. 仅格式化数值列:从第4列开始循环处理,精准对应样本分数列,前三列的chr/start/end保持原样。

输出验证

处理后的文件会保留完整表头,数值列均为三位小数:

chr	start	end	EE85756	EE85757	EE85770	EE85775
chr1	9900	10000	0.371	0.506	0.250	0.663
chr1	10000	10100	214.787	313.545	250.865	335.980
...

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 11:10:34