用pig拉丁语计算平均值

93ze6v8z  于 2021-06-25  发布在  Pig
关注(0)|答案(1)|浏览(259)

考虑一个数据文件:

4, 8, 2
5, 2, 5
3, 1, 7

我要计算每列的平均值。最简单的方法是什么?
如果我有20列,是否有一个循环,这样我就不必手动计算每一列的循环?

yhxst69z

yhxst69z1#

你能试试这个吗?

A = LOAD 'input.txt' USING PigStorage(',') AS(a,b,c);
B = FOREACH A GENERATE AVG(TOBAG(*));
DUMP B;

输出:

(4.666666666666667)
(4.0)
(3.6666666666666665)

更新:每列的平均值

A = LOAD 'input.txt' USING PigStorage(',') AS(a,b,c);
B = GROUP A ALL;
C = FOREACH B GENERATE AVG(A.a),AVG(A.b),AVG(A.c);
DUMP C;

输出:

(4.0,3.6666666666666665,4.666666666666667)

相关问题