В кадре данных Spark, как транспонировать строки в столбцы?

это может быть очень простой вопрос. Я хочу перенести все строки фрейма данных в столбцы. Я хочу преобразовать этот df, как показано ниже, вывести DF. Каковы способы в искре для достижения этого?

Примечание. У меня есть один столбец во входном DF

import sparkSession.sqlContext.implicits._
val df = Seq(("row1"), ("row2"), ("row3"), ("row4"), ("row5")).toDF("COLUMN_NAME")
df.show(false)

    Input DF:
    +-----------+
    |COLUMN_NAME|
    +-----------+
    |row1       |
    |row2       |
    |row3       |
    |row4       |
    |row5       |
    +-----------+

    Output DF
    +----+----+----+----+----+
    |row1|row2|row3|row4|row5|
    +----+----+----+----+----+
  

person rajesh    schedule 20.06.2020    source источник
comment
Отвечает ли это на ваш вопрос? Как повернуть Spark DataFrame?   -  person mazaneicha    schedule 20.06.2020
comment
Думаю, этот ответ поможет: stackoverflow.com/a/49393080/1125159. Неясно, хотите ли вы row1, row2. etc, чтобы быть именами столбцов в выходном DataFrame. Я предполагаю, что нет, поэтому вам следует обновить свой вопрос, включив в него нужные имена столбцов.   -  person Powers    schedule 20.06.2020
comment
Без groupBy, pivot, agg и first .. проверьте это - " title="scala spark сглаживает массив структур ключевых значений"> stackoverflow.com/questions/61686883/   -  person Srinivas    schedule 20.06.2020


Ответы (1)


Вам это помогает?

df.withColumn("group",monotonicallyIncreasingId  ).groupBy("group").pivot("COLUMN_NAME").agg(first("COLUMN_NAME")).show
person abc_spark    schedule 20.06.2020
comment
Это создает записи строк в выходном DF - person rajesh; 20.06.2020