Добавьте столбец с номером строки в порядке возрастания, начиная с 1, используя pyspark - PullRequest
0 голосов
/ 21 мая 2019

Я хочу создать столбец с именем "id", который будет иметь номера строк, которые будут использоваться в окончательной генерации пары. столбец "id"

Я сделал это на python, используя следующий способ. Может кто-нибудь подсказать, как это сделать в pyspark.

con_2['id'] = range(1, 1+len(con_2))
len(con_2.customer_play_id.unique()) 

Код моего Pyspark указан ниже, но он не работает

from pyspark.sql.types import IntegerType
slen = udf(lambda s: len(s), IntegerType())
con_2 = con_2.withColumn('id', F.length(con_2.customer_play_id))

ожидаемый результат должен быть (Id - столбец, который я хочу добавить) ДФ

id  col1 col2
1   X      Y
2   y1     y4
3   y2     y7
4   y3     y8

1 Ответ

0 голосов
/ 21 мая 2019
from pyspark.sql.window import Window as W
from pyspark.sql import functions as 
con_2 =con_2.withColumn("id",row_number().over(Window.orderBy("customer_play_id")))
con_2.show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...