有没有更好的方法可以同时为给定 SparkSQL 的所有或多个列添加前缀或重命名DataFrame
比多次调用dataFrame.withColumnRenamed()
?
一个例子是,如果我想检测更改(使用完整外连接)。然后我就剩下两个了DataFrame
具有相同的结构。
我建议使用 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 : _*)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)