grunt> data = load '/home/temp2.txt' as (val);
grunt> g = group data all;
grunt> avg = foreach g generate AVG(data.val) as a;
grunt> min = foreach g generate MIN(data.val) as m;
grunt> max = foreach g generate MAX(data.val) as x;
grunt> values = foreach data generate val,min.m,max.x,avg.a;
grunt> dump values;
2条答案
按热度按时间ryevplcw1#
使用
TOBAG
内置的自定义项,让你的领域到一个袋子,然后你可以使用MIN
,AVG
,和MAX
在那个袋子上。在一条记录上使用所有三个摘要函数应该没有问题。jdzmm42g2#
这是我解决这个问题的简单方法。我输入了以下数字,
temp2.txt文件
我遵循这些步骤,
1] 从文件中加载数据
2] 然后将所有数据分组
3] 从分组数据中找到平均值、最小值和最大值
4] 然后foreach值在加载的数据中生成数据和最小值、最大值和平均值。
代码如下:,
以下是输出,
输出