根据 bash 中的字段值合并列


23:21,74.285714,199924
23:21,80.000000,627377
23:21,82.857143,499796
23:22,85.714286,670676
23:22,87.428571,149860
23:22,88.000000,301272

我正在使用的输入数据集如下所示。

我正在尝试做的是每分钟(第一个字段)合并数据。第 2 列值应求平均值,第 3 个字段值应求和。

所以我的输出应该看起来像:

23:21,78,127377
23:22,87,105678

上面的值是样本,不是真正的求和或平均值,但这就是要点。我现在正在尝试用awk来做到这一点,有更好的选择吗?

你可以试试awk:

awk -F, '{a[$1]+=$2; b[$1]+=$3; c[$1]++}
          END {for (i in a) print i, int(a[i]/c[i]), b[i]}' OFS=, file
23:21,79,1327097
23:22,87,1121808

相关内容

  • 没有找到相关文章

最新更新