PIg:如何创建分类变量?

PIg: how to create a categorical variable?

我在大型数据集上使用 PIG 0.12,我需要创建一个分类变量,例如

FOREACH mydata GENERATE category = 1 IF condition1
                        category = 2 IF condition2
                        category = 3 IF condition3

该语法无效。在 Pig 中可以这样做吗?

谢谢!

根据病情的复杂程度,这里有一些解决办法:

bincond:

(condition ? value_if_true : value_if_false) 

case:

X = FOREACH A GENERATE f2, (
  CASE f2 % 2
    WHEN 0 THEN 'even'
    WHEN 1 THEN 'odd'
  END
);

udf:

FOREACH mydata GENERATE category_udf(field_2b_checked)