Jir*_*riS 12 java apache-spark apache-spark-sql
有没有更好的方法在给定SparkSQL的同时为多个列添加前缀或重命名,而DataFrame不是多次调用dataFrame.withColumnRenamed()?
例如,如果我想检测更改(使用完全外连接).然后我留下两个DataFrame具有相同结构的s.
Zyo*_*oma 13
我建议使用select()方法来执行此操作.实际上withColumnRenamed()方法本身使用select().以下是如何重命名多个列的示例:
import org.apache.spark.sql.functions._
val someDataframe: DataFrame = ...
val initialColumnNames = Seq("a", "b", "c")
val renamedColumns = initialColumnNames.map(name => col(name).as(s"renamed_$name"))
someDataframe.select(renamedColumns : _*)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18894 次 |
| 最近记录: |