我有一个pysparkDataframe,想添加一个列,以重复的方式从列表中添加值。如果这只是python,我可能会使用itertools的cycle函数。我不知道在Pypark怎么做。
names = ['Julia', 'Tim', 'Zoe']
我的Dataframe如下所示:
+-----+------+
| id_A| idx_B|
+-----+------+
| a| 0|
| b| 0|
| b| 2|
| b| 2|
| b| 2|
| b| 2|
+-----+------+
我希望它看起来像这样:
+-----+------+--------+
| id_A| idx_B| names |
+-----+------+--------+
| a| 0| Julia|
| b| 0| Tim|
| b| 2| Zoe|
| b| 2| Julia|
| b| 2| Tim|
| b| 2| Zoe|
+-----+------+--------+
1条答案
按热度按时间bhmjp9jg1#
这里有一条路。
1-为Dataframe添加唯一的增量id:
2-从名称列表创建Dataframe:
3-在以下条件下使用模3(名称列表长度)联接: