问题
So I have an RDD of something like this
RDD[(Int, List)]]
Where a single element in the RDD looks like
(1, List(1, 2, 3))
My question is how can I expand the key value pair to something like this
(1,1)
(1,2)
(1,3)
Thank you
回答1:
rdd.flatMap { case (key, values) => values.map((key, _)) }
回答2:
And in Python (based on @seanowen's answer):
rdd.flatMap(lambda x: map(lambda e: (x[0], e), x[1]))
来源:https://stackoverflow.com/questions/36392938/spark-expansion-of-rddkey-list-to-rddkey-value