Awk计数频率

Awk计数频率,awk,Awk,嘿,我想计算awk中某一列中的数据量。 示例数据集是 258 137 8 5 9 我想计算第二列中5的频率。这是我试过的,但没用 { total = 0; for(i=1;i<=NF;i++) { if(i==2) {if($i==5) {total++;} } printf("%s ", total); } } { 总数=0; 对于(i=1;i以下各项如何: awk '{ if ($2==5) count++ } END { print count }' 您可以将

嘿,我想计算awk中某一列中的数据量。
示例数据集是
258
137
8 5 9

我想计算第二列中5的频率。这是我试过的,但没用

{
total = 0;
  for(i=1;i<=NF;i++) 
{
  if(i==2)
{if($i==5) {total++;}

}
  printf("%s  ", total);

}
}
{
总数=0;

对于(i=1;i以下各项如何:

awk '{ if ($2==5) count++ } END { print count }'

您可以将条件移出块:
awk'$2==5{count++}END{print count}'
awk 'NR == 1 {ind = 0} $2 == 5 {ind++} END {print ind}' testdata.txt