【发布时间】:2018-02-19 01:35:54
【问题描述】:
我试图将行除以该行中的最大值为(所有列都为 NA 的行)
r1 r2 r3 r4
a 0 2.3 1.2 0.1
b 0.1 4.5 9.1 3.1
c 9.1 8.4 0 5
我明白了
r1 r2 r3 r4
a 0 1 0.52173913 0.043478261
b 0.010989011 0.494505495 1 0.340659341
c 1 0.923076923 0 0.549450549
我尝试通过执行计算每行的最大值
awk '{m=$1;for(i=1;i<=NF;i++)if($i>m)m=$i;print m}' file.txt > max.txt
然后将其作为最后一列粘贴到 file.txt 中
paste file.txt max.txt > file1.txt
我正在尝试执行一个代码,其中最后一列将划分该行中的所有列,但首先我需要格式化每一行,因此我被困在
awk '{for(i=1;i<NF;i++) printf "%s " $i,$NF}' file1.txt
我正在尝试打印该行的每个组合,然后在新行上打印下一行组合。但我想知道是否有更好的方法来做到这一点。
【问题讨论】:
-
..和?你已经得到这个还是你想要得到这个?到目前为止,你在 awk 中写了什么?什么有效/无效?举一个输入格式的最小例子。
-
你想为全为零的行打印什么? 1s 或 NaNs 或 0s 还是别的什么?
-
感谢您提出这个问题,我会将其添加到我的问题中