1

I have a file (72 columns totally) and would like to add every other columns starting from 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

The output should be

20170101 1  6.5
20170101 2 10
20170101 3 14

this is what I have, but it will not work.

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

Thank you for help.

kelly
  • 91
  • 7

1 Answers1

1

Following simple awk could help you on this.

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

Adding a non-one liner form of solution too now.

awk '
{
  for(i=4;i<=NF;i+=2){  sum+=$i  };
  print $1,$2,sum;
  sum=0
}
'   Input_file
RavinderSingh13
  • 130,504
  • 14
  • 57
  • 93