如何用猪转换目标值?
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;
我有一些数据的目标是 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;