我的数据如下所示
+------------+--------------+---------------+
|domain | country_code | country |
+------------+--------------+---------------+
|amazon.de | DE | Germany |
|amazon.uk | UK | united kingdom|
|amazon.de | UK | mismatched |
|amazon.uk | DE | mismatched |
+------------+--------------+---------------+
在上述数据中,我想更正country_code,因此应对照country_code列检查域列中包含.de的所有内容,如果Country_code包含DE,则表示正确匹配。否则任何不正确的
因此,我正在尝试创建一个如下所示的新列国家/地区。但是,在使用when时,我无法使用and语句。你能帮忙吗
import pyspark.sql.functions as f
df = df.withColumn(
'country',
f.when(
f.col('domain') == '.de' && f.col('country_code') == 'DE',
'Germany'
).otherwise('mismatch')
)