row_number()
Описание
Функция row_number() присваивает последовательный номер каждой строке в окне, начиная с 1.
Параметры
Нет параметров
Возвращаемое значение
Long - номер строки
Пример использования
from pyspark.sql import SparkSession
from pyspark.sql.window import Window
from pyspark.sql.functions import row_number
# Создаем SparkSession
spark = SparkSession.builder.appName("row_number_example").getOrCreate()
# Создаем DataFrame
data = [
    ("A", 100),
    ("B", 200),
    ("C", 300),
    ("D", 400),
    ("E", 500)
]
df = spark.createDataFrame(data, ["name", "value"])
# Определяем окно
window = Window.orderBy("value")
# Присваиваем номера строкам
result = df.select(
    "name",
    "value",
    row_number().over(window).alias("row_number")
).show()
# Результат:
# +----+-----+-----------+
# |name|value|row_number |
# +----+-----+-----------+
# |   A|  100|          1|
# |   B|  200|          2|
# |   C|  300|          3|
# |   D|  400|          4|
# |   E|  500|          5|
# +----+-----+-----------+
 Примечания
- Функция должна использоваться с оконной спецификацией
 - При одинаковых значениях присваиваются разные номера
 - Для вычисления ранга используйте 
rank() - Для вычисления плотного ранга используйте 
dense_rank() - Для получения значения по номеру строки используйте 
nth_value()