重新排列火花列的顺序

Posted

技术标签:

【中文标题】重新排列火花列的顺序【英文标题】:rearrange order of spark columns 【发布时间】:2017-07-03 13:24:16 【问题描述】:

我有很多专栏的火花dataframe。使用 SparkScala,我想以指定的顺序选择列,但我不想硬编码所需的顺序。在伪代码中,我想做类似的事情:

val colNames = df.columns

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

df.select(newOrder)

我该怎么做?谢谢!

【问题讨论】:

【参考方案1】:

你可以这样做:

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

【讨论】:

以上是关于重新排列火花列的顺序的主要内容,如果未能解决你的问题,请参考以下文章

如何根据特定列的值重新排列数据框的行

如何更改DataFrame列的顺序

pandas改变dataframe的列的顺序改变数据列的排列次序

连接单独处理的火花数据帧的两列时的顺序保证是啥?

在 Raku 中将数字重新排列为非英文字母顺序

以随机顺序重新排列NSArray / MSMutableArray