【发布时间】:2017-04-18 23:37:28
【问题描述】:
我有一个 DataFrame 有几列。现在我想在现有的 DataFrame 中再添加两列。
目前我正在使用 DataFrame 中的withColumn 方法进行此操作。
例如:
df.withColumn("newColumn1", udf(col("somecolumn")))
.withColumn("newColumn2", udf(col("somecolumn")))
实际上,我可以使用 Array[String] 在单个 UDF 方法中返回两个 newcoOlumn 值。但目前我就是这样做的。
无论如何,我可以有效地做到这一点吗?在这里使用explode 是一个不错的选择吗?
即使我必须使用explode,我也必须使用一次withColumn,然后将列值返回为Array[String],然后使用explode,再创建两列。
哪个有效?还是有其他选择?
【问题讨论】:
标签: scala dataframe apache-spark-sql