【发布时间】:2013-02-27 06:06:56
【问题描述】:
例如,我有如下数据:
Flats 2b
01/1991, 3.45
01/1992, 4.56
01/1993, 4.21
01/1994, 5.21
01/1995, 7.09
01/2013, 6.80
Eagle 2
01/1991, 4.22
01/1992, 6.32
01/1993, 5.21
01/1994, 8.09
01/1995, 7.92
01/2013, 6.33
我正在尝试计算第 2 列的平均值,以便我想要的输出最好如下所示:
Flats 2b
Avg = 4.67
Eagle 2
Avg = 5.26
甚至更简单,看起来像这样没有标题: 平均 = 4.67 平均 = 5.26
等等...因为输入文件充满了许多带有如上所示数据的标题。
我尝试做模式匹配选项,并使用 NR 作为 awk one-liner,但没有成功:
awk '/01/1991,/01/1993 {sum+=$2; cnt+=1} {print "Avg =" sum/cnt}' myfile.txt
我得到了每个气象塔分别在 1991、1992 和 1993 年的平均值,但不是我想要的平均值。
非常感谢您的帮助!
【问题讨论】:
标签: awk