有没有办法把Pig的两个同样大小的袋子“合并”起来?我有两个这样的包-
({(0.05,0.0),(0.05,0.0)}, {a, b})
我想要的是:
(0.05,0.0,a), (0.05,0.0,b)
(不管是袋装还是元组装)。这似乎是超级直截了当地走自定义项的方式。有没有使用pig操作符或datafu udf的简单解决方案?
doinxwow1#
如果顺序不重要,那么您可以使用自定义项来执行此操作。在python中:
@outputSchema('combined:{(f1, f2, f3)}') def combine_equal_bags(bag1, bag2): out = [] for b1, b2 in zip(bag1, bag2): out.append(b1 + (b2,)) return out
这是不可能只用纯Pig。
1条答案
按热度按时间doinxwow1#
如果顺序不重要,那么您可以使用自定义项来执行此操作。在python中:
这是不可能只用纯Pig。