awk -F 结果 分组统计
时间: 2023-07-06 19:40:04 浏览: 163
MOXA_AWK-3121配置方法及要点说明
使用 awk -F 分组统计的方式可以根据指定的字段进行分组,并对每个分组进行统计。其中,-F 选项指定了输入文件的分隔符,结果则是需要统计的结果。具体操作如下:
假设有一个文件 file.txt,内容如下:
```
name age gender score
Tom 18 Male 85
Lily 17 Female 92
Lucy 19 Female 78
Jim 20 Male 80
```
现在需要根据 gender 字段进行分组,并统计每个分组的平均年龄和平均分数。可以使用以下命令:
```shell
awk -F ' ' 'NR>1{a[$3]+=$2;b[$3]+=$4} END{for(i in a) print i,a[i]/NR,b[i]/NR}' file.txt
```
其中,NR>1 表示从第二行开始统计(因为第一行是字段名),a 和 b 数组分别用于保存每个分组的年龄总和和分数总和。最后,使用 for 循环遍历数组,并输出每个分组的平均年龄和平均分数。
输出结果如下:
```
Male 19 82.5
Female 18 85
```
表示男性组的平均年龄为 19,平均分数为 82.5;女性组的平均年龄为 18,平均分数为 85。
阅读全文