我有一个csv文件,如下所示:
ID_X,1,2,7,8
ID_Y,6,9,3,5
ID_Z,7,12,4,4
我的目标是创建一个csv文件,其中包含每个列中所有值的总和(从第二列开始),因此在这种情况下,该文件将如下所示:
SUM,14,23,14,17
到目前为止,我可以使用awk一次为一列做到这一点。例如,对于带有数字的第一列:
awk 'BEGIN {FS=OFS=","} ; {sum+=$2} END {print sum}' test.txt
14
有没有办法实现我想要的目标?
非常感谢!
答案 0 :(得分:1)
答案 1 :(得分:0)
你快到了。 用awk你可以说:
awk ' BEGIN {FS=OFS=","}
{for (i=2; i<=NF; i++) {sum[i]+=$i} len=NF}
END {$1="SUM"; for (i=2; i<=len; i++) $i=sum[i]; print}
' file.csv