如何用猪转换目标值?

How to convert target values with pig?

我有一些数据的目标是 4 个值,我希望其中三个成为一个使用拉丁猪的单曲的一部分。

Input:                     Output:
ID     | Target            ID     | Target    
-----------------          -----------------
test1      1               test1      1
test2      1               test2      1
test3      2               test3      2
test4      2               test4      2
test5      3               test5      2
test6      4               test6      2
test7      2               test7      2

有人知道最好的方法

使用 Bincond 检查目标值是否大于 1,如果为真,则将其替换为您想要的值,在本例中为 2。

A = LOAD 'data.txt' USING PigStorage('\t') AS (Id:chararray,target:int);
B = FOREACH A GENERATE Id,(target > 1 ? 2 : target);
DUMP B;