我在元组中有一列称为avg_rating。我想基于avg_rating中的值创建一个新列NPS。这是avg_rating数据的样子
avg_rating
3
4
8
9
10
因此,如果评级> = 8,则Pr
如果等级介于4到8 NPS之间,则为P
如果评分
这是我正在尝试的
yy = FOREACH avg_rating GENERATE avg_rating,((int)wtr>=8 ?'P':(int)wtr>=4 && (int)wtr<8 ?'PR':'D');
我在Turnery运算符中使用了多个条件,但给我错误
知道这有什么问题吗?
最佳答案
这里有几个问题。
解析:
avg_rating = load '/tmp' using PigStorage('\t') as (wtr:INT);
yy = FOREACH avg_rating GENERATE
wtr,
((int)wtr>=8 ? 'P' : ((int)wtr>=4 and (int)wtr<8 ? 'PR' : 'D')) as v;
describe yy;
关于hadoop - pig 根据另一列中的值添加列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20477924/