标题可能有点混乱,所以我将展示我想要实现的目标。
所以说我有一个只有 int 的数据。
10
20
30
40
50
60
70
80
90
并且数据被称为 data.csv 什么的
所以我愿意
A = load 'data.csv' using PigStorage(',');
它会将其加载到 A
然后我使用这些数据并计算它的平均值。
我做的
B = foreach A generate int;
C = group B all;
avg = foreach C generate AVG(B.int);
(忽略小的语法错误,你明白了)
因此,如果我转储 avg,我将得到一个表示数据 A 平均值的整数。
所以,现在我想做的是
通过仅具有高于平均值的数据来过滤掉数据 A。
所以像这样
X = filter A by int > avg
但它不喜欢我使用数据变量进行过滤比较。
我应该如何做到这一点?