如何计算每行的平均值(不包括每行的第一个值)?

如何计算每行的平均值(不包括每行的第一个值)?

我计算每行的平均值,但不包括第一个值。例子:

1   12 13 14 15 16 17 18   
2   21 22 23 24 25 26 27 28 29     
... --------

我想要的输出就像

1  15   
2  25   
....

答案1

一个perl一:

perl -MList::Util=sum -ane 'printf "%s %s\n", shift @F, sum(@F)/(@F?@F:1)' file
1 15
2 25

答案2

您可以尝试使用awk

awk '{ s = 0; for (i = 2; i <= NF; i++) s += $i; print $1, (NF > 1) ? s / (NF - 1) : 0; }' file

结果:

1 15
2 25

相关内容