我想知道是否有方法可以同時更改PySpark數據框的兩個(或多個)列。現在我正在使用withColumn
,但我不知道這是否意味着該條件將被檢查兩次(對於大型數據幀,這對我來說太昂貴了)。這段代碼基本上檢查其他兩列(對於同一行)中的值,並基於它將兩列更改爲無/空。PySpark數據框:根據條件同時更改兩列
condition = is_special_id_udf(col("id"))) & should_hide_response_udf(col("response_created"))
new_df = df.withColumn(
"response_text",
when(condition, None)
.otherwise(col("response_text"))
)
new_df = df.withColumn(
"response_created",
when(condition, None)
.otherwise(col("response_created"))
)
請分享完整的代碼和示例數據。你的代碼是不可重現的。 – mtoto
你真的需要這些數據嗎?代碼工作正常,我只是想知道是否有更好的方法來做同樣的事情。 – mfcabrera
您正在創建兩個相同的列,是您的問題該怎麼做? – mtoto