【发布时间】:2016-08-24 11:08:07
【问题描述】:
我有一个包含 n 行(用逗号分隔)和列的文本文件,我想找到每列的平均值,不包括空字段。
示例输入如下所示:
1,2,3
4,,6
,7,
想要的输出是:
2.5, 4.5, 4.5
我试过了
awk -F',' '{ for(i=1;i<=NF;i++) sum[i]=sum[i]+$i;if(max < NF)max=NF;};END { for(j=1;j<=max;j++) printf "%d\t",sum[j]/max;}' input
但它将连续的分隔符视为一列和混合列。 非常感谢任何帮助。
【问题讨论】:
-
第一个字段的平均值应该是 2.5?
-
是的,对不起
标签: awk average delimiter comma