在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)
在这个示例中,首先将数据按姓名进行分组,然后计算每个分组中分数的平均值,并输出结果。