如何在Pig中找到单个列的平均值,总和值?

时间:2016-12-02 06:29:51

标签: count sum apache-pig average

我有一个变量car_age,它在整个CSV文件中保存汽车年龄的不同值。我如何取所有值的平均值?我需要用car_age值的平均值(或平均值)替换异常值。 这是我目前正在做的事情。

training_data= LOAD '/user/All_State_Insurance_Prediction_Dataset/sampled_training_dataset/sampled_training_set';
A1 = foreach training_data generate car_age;
B1= Distinct A1;

B1具有明显的汽车年龄值。如何在B1中找到值的平均值,总和和计数?我没有使用Group By,因为我需要在单个值列表上完成这些操作。

1 个答案:

答案 0 :(得分:0)

尝试平均值

training_data= LOAD '/user/All_State_Insurance_Prediction_Dataset/sampled_training_dataset/sampled_training_set' USING PigStorage();

A1 = foreach training_data generate car_age;

B1= Distinct A1;

B1_grouped = GROUP B1 all;

B1_avg = FOREACH B1_grouped GENERATE AVG(B1);

类似地,您可以为SUM和其他聚合函数

执行此操作