如何统计符合特定条件的值?

如何统计符合特定条件的值?

例如,我有包含列数的文件

输入文件

12  15  27  
5   6  48  
19  16  25  
17  23  37

ETC

X我想计算第 2 列中满足以下条件的所有数字 ( )6 <= X < 20

所以结果将3对应于数字15,616

答案1

在类似这样的工具中这很容易awk

awk '$2>=6 && $2<20 { tot++ } END { print +tot}'

如果你想他们然后

awk '$2>=6 && $2<20 { tot += $2 } END { print +tot}'

答案2

对于注明的条件,很容易遍历所有需要的数字

grep -Ec '^[0-9]+\s+([6-9]|1[0-9])\b'

相关内容