我现在有一个PyparkDataframe,如下所示:
+--------------------+
| items|
+--------------------+
| [1, 2, 3, 4]|
| [1, 5, 7]|
| [9, 10]|
| ...|
我的目标是转换这个Dataframe(或创建一个新的Dataframe),以便新数据是表中项目的两个长度组合。
我知道 itertools.combinations
可以创建列表的组合,但我正在寻找一种方法来有效地对大量数据执行此操作,但我无法找出如何将其与pyspark集成。
示例结果:
+-------------+-------------+
| item1| item2|
+-------------+-------------+
| 1| 2|
| 2| 1|
| 1| 3|
| 3| 1|
| 1| 4|
| 4| 1|
| 2| 3|
| 3| 2|
| 2| 4|
| 4| 2|
| 3| 4|
| 4| 3|
| 1| 5|
| 5| 1|
| 1| 7|
| 7| 1|
| 5| 7|
| 7| 5|
| 9| 10|
| 10| 9|
| ...|
1条答案
按热度按时间hpxqektj1#
你可以用
itertools.combinations
使用自定义项: