阅读量:7
在Pig中进行数据聚合操作通常要使用GROUP BY语句来对数据进行分组,然后再使用聚合函数来对每个分组进行计算。以下是一个简单的示例:
假设有一个包含学生信息的数据集,字段包括学生姓名、年龄和分数,数据如下:
Alice, 18, 80 Bob, 20, 85 Alice, 19, 90 Bob, 21, 88
要求计算每个学生的平均分数,可以使用如下Pig Latin语句:
data = LOAD 'student_data.txt' USING PigStorage(',') AS (name:chararray, age:int, score:int); grouped_data = GROUP data BY name; average_score = FOREACH grouped_data GENERATE group AS name, AVG(data.score) AS avg_score; DUMP average_score;
执行以上代码后,会得到每个学生的平均分数:
(Alice, 85) (Bob, 86.5)
在这个示例中,首先将数据按姓名进行分组,然后计算每个分组中分数的平均值,并输出结果。