我对awk很新,我正在使用越来越多来处理我正在运行的模型的输出文件。现在,我遇到了一个乘法问题。
我想计算百分比的相对变化。
示例:
A B
1 150 0
2 210 10
3 380 1000
...
我想计算Ax = (Ax-A1)/A1 * 100
。
输出:
New_A B
1 0 0
2 10 40
3 1000 153.33
...
我可以将列相乘,但不知道如何将值固定到文本文件中的位置(即第1行第1列)。
谢谢。
答案 0 :(得分:1)
假设您的实际文件没有" A B"标题和行号:
$ cat file
150 0
210 10
380 1000
$ awk 'NR==1 {a1=$1} {printf "%s %.1f\n", $2, ($1-a1)/a1*100}' file | column -t
0 0.0
10 40.0
1000 153.3