我是使用python激发火花的新手,所以如果问题听起来很基本,请原谅。如果我有RDD:
[(((1, 0), 0.0), (2, 0)),
(((1, 0), 0.0), (3, 0)),
(((2, 0), -0.0), (1, 0)),
(((2, 0), -0.0), (3, 0)),
(((3, 0), -0.0), (1, 0)),
(((3, 0), -0.0), (2, 0))]
我想合并具有公共键的值。所以基本上我的输出应该是——
[(((1, 0), 0.0), [(2, 0),(3,0)])
(((2, 0), -0.0), [(1, 0),(3,0)])
(((3, 0), -0.0), [(1, 0),(2,0)])]
我尝试使用groupByKey()
但仍然无法获取解决方案。任何帮助将不胜感激。谢谢。
这应该可以解决问题: rdd.groupByKey().mapValues(list).collect()