繁体   English   中英

如何在 pyspark 中将列表的 RDD 列表转换为一个列表

[英]How to convert RDD list of lists into one list in pyspark

我有一个 RDD object,一个列表列表,看起来像这样(省略了数百万个子列表,这里只剩下 3 个)

my_tuples = [[('a','b'),('a','c')], 
             [('b','a'),('b','f'),('b','g')], 
             [('zzsx','c'), ('zzsx','q'), ('zzsx','m'), ('zzsx','ay'), ('zzsx','bbt')]]

我想将它转换成这样的单个列表

my_list = [('a','b'),('a','c'), ('b','a'),('b','f'),('b','g'), 
           ('zzsx','c'), ('zzsx','q'), ('zzsx','m'), ('zzsx','ay'), ('zzsx','bbt')]

我不能使用循环,因为my_tuples是 RDD object 并且my_tuples的大小太大而无法执行。 我是新来的火花,任何建议表示赞赏。 谢谢。

您可以使用flatMap将其展平:

rdd.flatMap(lambda l: l)

由于您的元素是列表,您可以在 function 中返回这些列表,如示例中所做的那样

[('a', 'b'),
 ('a', 'c'),
 ('b', 'a'),
 ('b', 'f'),
 ('b', 'g'),
 ('zzsx', 'c'),
 ('zzsx', 'q'),
 ('zzsx', 'm'),
 ('zzsx', 'ay'),
 ('zzsx', 'bbt')]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM