【发布时间】:2021-02-14 16:06:53
【问题描述】:
我有一个数据:
[(u'ab', u'cd'),
(u'ef', u'gh'),
(u'cd', u'ab'),
(u'ab', u'gh'),
(u'ab', u'cd')]
我想对这些数据进行 mapreduce 并找出相同对出现的频率。
结果我得到:
[((u'ab', u'cd'), 2),
((u'cd', u'ab'), 1),
((u'ab', u'gh'), 1),
((u'ef', u'gh'), 1)]
如您所见,它并不正确,因为 (u'ab', u'cd') 必须是 3 而不是 2,因为 (u'cd', u'ab') 是同一对。
我的问题是如何使程序将 (u'cd', u'ab') 和 (u'ab', u'cd') 计为同一对?我正在考虑对每一行的值进行排序,但找不到任何解决方案。
【问题讨论】:
标签: apache-spark sorting pyspark mapreduce rdd