按阶段统计数量
source data:
A 235 B 698 C 1425 A 980 C 800 B 120 A 1000 C 1578 B 1899 C 2000
要求:
统计每500为一个阶段,第二列的数量,大于1500的算一起: name 0-499 500-999 1000-1499 >=1500 A 1 1 1 0 B 1 1 0 1 C 0 1 1 2
script:
awk 'BEGIN{printf("name 0-499 500-999 1000-1499 >=1500\n")}{a[$1];i=int($2/500);if(i<3) b[$1,i]++;else b[$1,3]++}END{for(j in a){printf j"\t"; for(k=0;k<=3;k++) printf b[j,k]+0"\t";print ""}}' source_data
*** 你必须十分努力,才能看起来毫不费力 ***