我有一个带有很多列的火花dataframe
。使用 Spark 和 Scala ,我想按指定的顺序选择列,但我不想对所需的订单进行硬编码。在伪代码中,我喜欢做类似的事情:
val colNames = df.columns
val newOrder = colNames(colNames.length) ++ colNames(0:colNames.length-1)
df.select(newOrder)
我该怎么做?谢谢!
答案 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|
+---+---+---+