awk - 确定停留时间
问题描述
我有一个数据集:
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 中执行此操作,但到目前为止,我得到的只是总数字,即所有值组合的 9 32以上。
任何帮助将非常感激。
解决方案
awk
救援!我认为您的输出与输入不一致,或者我误解了问题。这是计算值的链长>31
$ awk '$1>31{c++; next} c{print c; c=0} END{if(c) print c}' file
6
4
END
如果最后一个链包含最后一个元素,则需要块。
推荐阅读
- sql - 使用 IN 条件检查新表的约束未按预期工作
- android - 由于某种原因,适配器中的 ImageView 为空
- spring-boot - 使用 OpenShift 从 Spring Boot 加密密码时遇到问题
- scala - 当假定等效的隐式类不是时应用隐式转换
- php - 根据第一个表的id查询多个表
- python - RuntimeError:任务得到未来
连接到不同的循环 - matplotlib-basemap - 如何在 cartopy 中模拟底图的 transform_vector
- html - 为什么底部:0 不足以将 ::after 内容直接移动到主要内容下方?
- database - 与下面描述的问题相对应的以下 SQL 查询有什么问题?
- php - 如何将复选框转换为切换切换