扁平化包和元组的元组

Posted

技术标签:

【中文标题】扁平化包和元组的元组【英文标题】:Flatten tuple of bags and tuples 【发布时间】:2015-11-05 19:38:31 【问题描述】:

我有一个包含包和元组的复杂元组。如何将其展平并取出袋子?

我试过这段代码:

X = ((a,b),(c,d),(e,f),((c,d),(e,f),g),((c,d),(e,f),h))
Y = FOREACH X flatten($0);
Y = FOEACH Y GENERATE Y.$0;

但这似乎并没有返回第一个袋子。

有没有办法在不使用 UDF 的情况下退回第一个包?

【问题讨论】:

【参考方案1】:

我找到了答案。希望它可以帮助某人

X = ((a,b),(c,d),(e,f),((c,d),(e,f),g),((c,d),(e,f),h))
Y = FOREACH X flatten($0) as (bag1:bag,bag2:bag,tuple1:tuple(),tuple2:tuple());
Y = FOEACH Y  GENERATE bag1;

【讨论】:

以上是关于扁平化包和元组的元组的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 Pig 中的 Elephant Bird 访问带有包和元组的嵌套 JSON

Julia:扁平化数组/元组数组

编程里面元组和数组的区别是啥?

Python的集合和元组

初识Python

Python元组常用操作小技巧