我正在使用数据元组:
dump c;
(20
5
5
)
(1
1
1
5
10
)
我想要实现的输出是计算每个数字的总数,所以像这样:
(1,3)
(5,3)
(10,1)
(20,1)
我尝试了这个命令,但没有成功:
d = FOREACH c GENERATE COUNT($0);
我目前没有c的架构(不确定此时是否重要):
describe c;
Schema for c unknown.
寻找建议。
答案 0 :(得分:0)
输入元组:
(20 5 5)
(1 1 1 5 10)
您可以通过标记化然后对其进行分组来获取整个元组的计数。
A = LOAD 'file' using TextLoader() as (line:chararray);
B = FOREACH A GENERATE FLATTEN(TOKENIZE(line)) as (line:chararray);
C = GROUP B BY line;
D = FOREACH C GENERATE group,COUNT(B);
dump D;
输出:
(1,3)
(5,3)
(10,1)
(20,1)