gpt4 book ai didi

hadoop - 如何排序元组中的项目?

转载 作者:可可西里 更新时间:2023-11-01 15:39:21 26 4
gpt4 key购买 nike

我有一对数字,我想对它们进行排序。

grunt> dump unordered
(11,22)
(88,33)
(55,66)

我如何将它们排序为:(11,22)(33,88)(55,66)

尝试使用袋子:grunt> bag_of_pairs = foreach 无序生成 TOBAG(TOTUPLE($0),TOTUPLE($1));grunt> ordered = foreach bag_of_pairs {o1 = order $0 by $0;生成o1;

最后得到这个有序但过度包装的列表,我不知道如何简化:

grunt> dump ordered
({(11),(22)})
({(33),(88)})
({(55),(66)})

谢谢

最佳答案

你需要一个 UDF将包转换为元组。但是,由于您只需要订购两件商品,这也可以通过 bincond 来完成。 .

ordered = FOREACH unordered GENERATE ($0<$1?$0:$1), ($0<$1?$1:$0) ;

注意:我现在无法对此进行测试,但这应该也可以。

ordered = FOREACH unordered GENERATE FLATTEN(($0<$1?($0,$1):($1,$0)) ;

关于hadoop - 如何排序元组中的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19282113/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com