通常我会做类似的事情
val fun = udf { x => ... }
df.withColumn("new", fun(df.col("old"))).drop("old").withColumnRename("new", "old")
有没有更短的方法?
我通常执行以下操作:
val df : DataFrame = ???
val fun = udf { x => ... }
df.withColumn("old", fun(df.col("old")))
但是你会丢失旧列中的信息,所以要小心不要丢失有价值的日期。
PS:当然,在Spark中可以通过不同的方式访问列。所以我让你决定使用哪个。