[英]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.