我是Spark的新手。现在,我正在处理一个非常混乱的数据集。结果,我不得不编写许多withColumn语句来更改列中的字符串。我只算了一下,总共有35个。大多数都只改变两三列,一次又一次。我的陈述如下:
.withColumn(
"id",
F.when(
(F.col("country") == "SE") &
(F.col("company") == "ABC"),
"22030"
) \
.otherwise(F.col("id"))
)
无论如何,有时我会成功运行数据集,有时却不会。它似乎使我的驱动程序崩溃了。这是一个问题,因为withColumn语句过多吗?我的理解是,这不应该引起收款,因此可以对工人独立执行,对吗?另外,数据集本身没有很多行,大约25000。或者我解决问题的方式有问题吗?我应该重写withColumn语句吗?我如何找出问题所在?