猪的平均所有列

时间:2014-05-12 12:30:42

标签: apache-pig

我有一个Pig关系,我想要计算其所有列的平均值。 Pig的buitin AVG() - 函数仅适用于一个列。如果我的关系只存在几列,那就不会出现问题,在这种情况下,可以编写如下内容:

MY_RELATION_AVERAGED = foreach MY_RELATION generate AVG($1), AVG($2), ...;

所以在这里要清楚,我想要最终得到的是每个列的所有元组的平均值,而不是每个元组的列数的平均值(这是另一种方式)。然而,我的关系有几十列,这使得上述解决方案不那么优雅。另一种解决方案是为此编写一个UDF,但在我看来,对于这样一个简单的任务,应该有一个更通用和更优雅的方法。我的直觉在这里是否正确?或者是UDF的方式吗?

编辑:从我的问题的表述中删除了一点点含糊不清。

0 个答案:

没有答案