Я ищу способ ранжировать столбцы в строке в фрейме данных pyspark.
Например, возьмем следующий фрейм данных, назовем его "df" (реальное будет многоконечно, больше столбцов):
A B C
99 30 21
20 10 44
50 90 87
78 11 09
Я хочу получить ранг определенного столбца, например:
A B C rank_of_A
99 30 21 3
20 10 44 2
50 90 87 1
78 11 09 3
В Python это было бы легко:
df2=df.rank(axis=1,method='first',ascending=True)
df['rankf_of_A']=df2.iloc[:,0]
Но ради жизни я не могу понять, как это сделать в pyspark.Есть много источников, которые говорят вам, как сделать это для строк (в основном с использованием функций Windows), но не для столбцов (кажется, что аргумент "axis" отсутствует во всех функциях pyspark, которые я нашел), и я не делаюхочу переставить каждую строку или что-то глупое подобное.
Как мне сделать это правильно в pyspark?