合并值键:具有公共键的值RDD



我是使用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()

最新更新