Spark:RDD(Key, List) 扩展为RDD(Key, Value)
Spark: Expansion of RDD(Key, List) to RDD(Key, Value)
所以我有一个像这样的 RDD
RDD[(Int, List)]]
RDD 中的单个元素看起来像
(1, List(1, 2, 3))
我的问题是如何将键值对扩展成这样
(1,1)
(1,2)
(1,3)
谢谢
rdd.flatMap { case (key, values) => values.map((key, _)) }
并且在 Python 中(基于@seanowen 的回答):
rdd.flatMap(lambda x: map(lambda e: (x[0], e), x[1]))
所以我有一个像这样的 RDD
RDD[(Int, List)]]
RDD 中的单个元素看起来像
(1, List(1, 2, 3))
我的问题是如何将键值对扩展成这样
(1,1)
(1,2)
(1,3)
谢谢
rdd.flatMap { case (key, values) => values.map((key, _)) }
并且在 Python 中(基于@seanowen 的回答):
rdd.flatMap(lambda x: map(lambda e: (x[0], e), x[1]))