Когда мне нужен новый столбец в кадре данных для последующего использования в другом вычислении, мой код выглядит примерно так:
var df: DataFrame = ...
df = df.withColumn("new_col", df.col("a") / 2)
println(df.withColumn("res", df.col("b") + df.col("new_col")).head())
Как объединить в одну строку (и избегать использования var
)?
Проблема в df.col()
, поскольку я не могу просто сделать следующее, потому что new_col
еще не существует в df
:
df.withColumn("new_col", df.col("a"))
.withColumn("res", df.col("b") + df.col("new_col"))
.head()
Есть ли какой-то API, которого мне не хватает?