映射DataFrame中单个列的正确方法是什么?

时间:2016-02-24 07:58:29

标签: apache-spark apache-spark-sql

通常我会做类似

的事情
val fun = udf { x => ... }
df.withColumn("new", fun(df.col("old"))).drop("old").withColumnRename("new", "old")

有更短的路吗?

1 个答案:

答案 0 :(得分:3)

我通常会做以下事情:

 
val df : DataFrame = ???
val fun = udf { x => ... }
df.withColumn("old", fun(df.col("old")))

但是你会从旧专栏中删除信息,所以要小心不要丢失宝贵的日期。

PS:当然,Spark中可以通过不同的方式访问列。所以我让你决定使用哪个。