重新排列火花柱的顺序

时间:2017-07-03 13:24:17

标签: scala apache-spark

我有一个带有很多列的火花dataframe。使用 Spark Scala ,我想按指定的顺序选择列,但我不想对所需的订单进行硬编码。在伪代码中,我喜欢做类似的事情:

val colNames = df.columns

val newOrder = colNames(colNames.length) ++ colNames(0:colNames.length-1)

df.select(newOrder)

我该怎么做?谢谢!

1 个答案:

答案 0 :(得分:0)

您可以这样做:

val df = Seq((1,2,3)).toDF("A","B","C")

df.select(df.columns.last, df.columns.dropRight(1): _*).show

+---+---+---+
|  C|  A|  B|
+---+---+---+
|  3|  1|  2|
+---+---+---+