How to Use Hash Map to Count the Frequencies of Values and Itera

  • 时间:2020-10-09 18:35:39
  • 分类:网络文摘
  • 阅读:85 次

AWK is a powerful text-processing programming language. Given a multi-million lines of text file containing the following data – we want to know the frequencies the delegation at each integer interval e.g. 2, 3, 4:

awk-data-example-steem How to Use Hash Map to Count the Frequencies of Values and Iterate the Key-Value Pairs in AWK? awk

awk-data-example-steem

First, we output the text file to console using cat then pipe it into grep to filter out non-data rows, and then we can execute the awk script.

cat steem3.txt | grep "delegates" | awk '$6 > 0 {
   data[int($6)]++
} 

END { 
  for (sp in data) {
     print (sp, "=", data[sp]);
  } 
}' 

It filters out the records that have zero values (undelegation records) – then we round the fraction numbers into integers and count them in a hash map.

Basically, we don’t have to declare the hash table prior to using it. And we can access it using the syntax map[key]. And at the END section, we can iterate the keys in the hash map in awk and print each value:

for (key in map) {
   print ("key is ", key, ", value is ", map[key]);
}
awk How to Use Hash Map to Count the Frequencies of Values and Iterate the Key-Value Pairs in AWK? awk

awk

–EOF (The Ultimate Computing & Technology Blog) —

推荐阅读:
冬季手脚冰凉者可以多喝“三红”暖身汤  老百姓对于食物中致癌物的认识误区  三类食品是引发癌症(恶性肿瘤)的因素  枸杞虽好但两种人吃了反而对健康有害  4个与大豆营养价值有关的真假说法  早餐第一口吃什么样的食物最养胃  萝卜颜色各异 营养价值各不相同  冬季养生美味 各种萝卜汤养胃又暖身  电脑族抗辐射可以经常吃这种水果  生活中常见的保护肠道健康的食物 
评论列表
添加评论