Awk 确定停留时间

Awk 确定停留时间,awk,dataset,Awk,Dataset,我有以下数据集: 32 33 34 35 34 32 29 28 27 25 29 32 34 35 36 28 27 28 28 我想知道一行中有多少数字高于32。例如,输出如下: 5 4 其中5是第一个实例,值大于32,4是第二个实例,值大于32。我一直试图在awk中这样做,但到目前为止,我得到的是一个集体数字,即所有32以上的值加起来都是9 任何帮助都将不胜感激。awk营救!我认为您的输出与输入不一致,或者我误解了问题所在。这是计算值的链长度>31 $ awk '$1>31{c+

我有以下数据集:

32
33
34
35
34
32
29
28
27
25
29
32
34
35
36
28
27
28
28
我想知道一行中有多少数字高于32。例如,输出如下:

5
4
其中5是第一个实例,值大于32,4是第二个实例,值大于32。我一直试图在awk中这样做,但到目前为止,我得到的是一个集体数字,即所有32以上的值加起来都是9


任何帮助都将不胜感激。

awk
营救!我认为您的输出与输入不一致,或者我误解了问题所在。这是计算值的链长度
>31

$ awk '$1>31{c++; next} c{print c; c=0} END{if(c) print c}' file
6
4

如果最后一条链包含最后一个元素,则需要使用
END
块。

awk
救命!我认为您的输出与输入不一致,或者我误解了问题所在。这是计算值的链长度
>31

$ awk '$1>31{c++; next} c{print c; c=0} END{if(c) print c}' file
6
4

如果最后一个链包含最后一个元素,则案例需要使用
END
块。

将您的尝试添加到问题中,并且根据您的描述,您的输出应该是4和3。结果不应该是
6 4
将您的尝试添加到问题中,并且根据您的描述,您的输出应该是4和3吗说明。结果不应该是
6 4
OP说的“高于32”,而不是“大于或等于32”。不过方法不错,要么是6,4,要么是5,3。数据和输出不一致。FWIW我同意应该是4,3。你是对的,应该是4,3。对不起,混淆了。OP说的是“高于32”,而不是“大于或等于32”。不过方法不错,要么是6,4,要么是5,3。数据和输出不一致。FWIW我同意应该是4,3。你是对的,应该是4,3。很抱歉给你带来了困惑。