计算Pig Latin的平均值

时间:2014-12-06 17:57:47

标签: java apache-pig

考虑一个数据文件:

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

我想计算每列的平均值。最简单的方法是什么?
 如果我有20列,是否有循环,那么我不必手动为每列计算它?

1 个答案:

答案 0 :(得分:2)

你能试试吗?

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)