如何将每个其他列添加到一起

时间:2018-03-26 23:46:44

标签: awk add

我有一个文件(共72列),并希望从column4开始添加所有其他列,

的infile

20170101 1 1 1.5 2 2 3 3  
20170101 2 1 2 2 4 3 4
20170101 3 1 5 2 3 3 6

输出应为

20170101 1  6.5
20170101 2 10
20170101 3 14

这就是我所拥有的,但它不起作用。

 awk '{for(i=4;i<=NF;i+=2) sum[i]+=$i; print}' infile

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

关注简单的static public int ReadIntegerFromConsole(string prompt) { int result; while (true) { Console.WriteLine(prompt); var input = Console.ReadLine(); var ok = int.TryParse(input, out result); if (ok) break; Console.WriteLine("That isn't a valid integer."); } return result; } static public void DisplaySum(int userNumber, int randomNumber, int delay) { var sum = userNumber + randomNumber; Thread.Sleep(delay); Console.WriteLine("The total of {0} + {1} = {2}", userNumber, randomNumber, sum); } 可以为您提供帮助。

awk

现在也添加非单线形式的解决方案。

awk '{for(i=4;i<=NF;i+=2){sum+=$i};print $1,$2,sum;sum=0}'   Input_file