猪问题,
我的数据设置方式如下。
Function Group Home Name
Rent MX 1 John
Rent MX 1 Jake
Rent MX 1 Pat
Rent DG 2 Jason
Rent DG 6 Patrick
Rent DG 6 Smith
Rent DG 6 Joe
我想要做的是按功能分组,分组和家庭,然后在该组内排名。
Function Group Home Name Rank
Rent MX 1 John 1
Rent MX 1 Jake 2
Rent MX 1 Pat 3
Rent DG 6 Patrick 1
Rent DG 6 Smith 2
Rent DG 6 Joe 3
猪的RANK功能不允许我在组内排名。任何建议? Jython UDF?
答案 0 :(得分:1)
查看DataFu中的Enumerate UDF,它会为您完成此操作。 http://datafu.incubator.apache.org/docs/datafu/1.1.0/datafu/pig/bags/Enumerate.html
答案 1 :(得分:0)
答案 2 :(得分:0)
好的,这有效
def num_bag(input):
output = []
for rank, item in num(input):
output.append(tuple([rank] + list(item)))
return output