gpt4 book ai didi

bash - 每n行bash的平均值

转载 作者:行者123 更新时间:2023-11-29 09:38:09 25 4
gpt4 key购买 nike

我不确定如何提出问题,但在这里。

我有一个包含 12/24/36/48... 行的长文件。

文件看起来像这样。

0 413
1 388
2 272
3 289
4 42
5 45
6 423
7 522
8 949
9 984
10 371
11 990
0 412
1 370
2 254
3 255
4 42
5 58
6 391
7 546
8 938
9 985
10 381
11 992

现在我想做的是对所有以 0 开头的行进行平均...例如 0 行的 413+412/2,然后以 1 开头的每一行等等...直到 11。所以输出将只有 12 行,每 n 行的平均值。

我真的很挣扎。我知道如何 awk 以数字开头的每一行,但在那里变得有点困惑。

最佳答案

awk '{sum[$1]=sum[$1] + $2; nr[$1]++} END {for (a in sum) {print a, sum[a]/nr[a]}}' file

保留由第一个字段索引的第二个字段的运行总和。还要计算您看到的每个第一个字段的数量。然后遍历所有看到的字段并打印出字段和平均值。

如果您想要按顺序输出,您可以通过管道传输到 sort 或在 END block 中使用数字循环(如果您提前知道最小值/最大值).您也可以在主操作 block 中保留最大值并使用它,但这更简单。

关于bash - 每n行bash的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27346875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com