我有两个表格
的文件文件1:
#fileheader1
0 123
1 456
2 789
3 999
4 112
5 131
6 415
etc.
file2的:
#fileheader2
0 442
1 232
2 542
3 559
4 888
5 231
6 322
etc.
如何取每个列的第二列,除以一个值然后从另一个减去一个,然后用新值输出一个新的第三个文件?
我希望输出文件的格式为
#outputheader
0 123/c-422/k
1 456/c-232/k
2 789/c-542/k
etc.
其中c和k是我可以插入脚本的数字
我见过这个问题:subtract columns from different files with awk
但是我不知道如何使用awk自己做这个,有没有人知道如何做到这一点或者可以解释链接问题中发生了什么,所以我可以尝试修改它?
答案 0 :(得分:2)
我写道:
awk -v c=10 -v k=20 ' ;# pass values to awk variables
/^#/ {next} ;# skip headers
FNR==NR {val[$1]=$2; next} ;# store values from file1
$1 in val {print $1, (val[$1]/c - $2/k)} ;# perform the calc and print
' file1 file2
输出
0 -9.8
1 34
2 51.8
3 71.95
4 -33.2
5 1.55
6 25.4
etc. 0