2017-07-03 98 views
0

我有一個火花dataframe與許多列。使用Spark斯卡拉,我想按指定的順序選擇列,但我不想硬編碼所需的順序。在僞代碼中,我想要做類似的事情:重新排列火花柱的順序

val colNames = df.columns 

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

df.select(newOrder) 

我該怎麼做?謝謝!

回答

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| 
+---+---+---+