考虑我有以下文件..
1 a
1 b
1 a
1 c
1 a
2 a
2 d
2 a
2 d
Run Code Online (Sandbox Code Playgroud)
我想在桶内有一个直方图...例如,如果桶是 1 那么输出将是
a 3
b 1
c 1
a 2
d 2
Run Code Online (Sandbox Code Playgroud)
对于桶 2...我们有
a 5
b 1
c 1
d 2
Run Code Online (Sandbox Code Playgroud)
我想用 awk 来做,但我真的卡住了......这是我的代码:
awk '
{A[$1]} count [$2]++
{for(i in A) {print i,A[i]}
}' test
Run Code Online (Sandbox Code Playgroud)
有什么帮助吗?
谢谢,
阿米尔。
编辑添加 size_of_bucket 变量。
awk -v "size_of_bucket=2" '
{
bucket = int(($1-1)/size_of_bucket);
A[bucket","$2]++;
}
END {
for (i in A) {
print i, A[i];
}
}
'
Run Code Online (Sandbox Code Playgroud)