gpt4 book ai didi

bash - 使用 Shell 工具(sed | awk...等)从给定的 sample.dat 文件计算最大、最小和平均字段值

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

我有一个 sample.dat 文件,其中包含 10 个不同的实验值字段,随时间记录。使用 sedawk 或任何其他 shell 工具,我需要编写一个脚本来读取 sample.data 文件并为每个字段计算最大值、最小值和平均值。

示例.dat

field1:experiment1: 10.0field2:experiment1: 12.5field1:experiment2: 5.0field2:experiment2: 14.0field1:experiment3: 18.0field2:experiment3: 3.5

输出

field1: MAX = 18.0, MIN = 5.0, AVERAGE = 11.0field2: MAX = 14.0, MIN = 3.5, AVERAGE = 10.0

最佳答案

awk -F: '
{
sum[$1]+=$3;
if(!($1 in min) || (min[$1]>$3))
min[$1]=$3;
if(!($1 in max) || (max[$1]<$3))
max[$1]=$3;
count[$1]++
}
END {
for(element in sum)
printf("%s: MAX=%.1f, MIN=%.1f, AVARAGE=%.1f\n",
element,max[element],min[element],sum[element]/count[element])
}' sample.dat

输出

field1: MAX=18.0, MIN=5.0, AVARAGE=11.0
field2: MAX=14.0, MIN=3.5, AVARAGE=10.0

关于bash - 使用 Shell 工具(sed | awk...等)从给定的 sample.dat 文件计算最大、最小和平均字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16572423/

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