PySpark: TypeError: 'Column' object is not callable : when using .contains

PySpark: TypeError: 'Column' object is not callable : when using .contains

我在连接子句中使用 .contains 时遇到此错误。拜托,任何人都可以建议我如何解决这个错误吗?

类型错误:'Column'对象不可调用

我正在使用 PySpark 1.6.1

   ClickDF_Dataset = ClickDF_Initial.join(ConfiguredButtons, lower(ClickDF_Initial.ObjectID).contains (lower(ConfiguredButtons.ObjectID)),"left")\
    .select(ClickDF_Initial.SessionNumber, ClickDF_Initial.ClickedDateTime, ClickDF_Initial.CsaNumber, ClickDF_Initial.ObjectID, ClickDF_Initial.ObjectLink, ClickDF_Initial.ObjectName, ClickDF_Initial.ObjectValue, ClickDF_Initial.AltText, ClickDF_Initial.CsaNumber, coalesce(ConfiguredButtons.Event, ClickDF_Initial.ObjectID).alias("AltObjectID"), lower(ClickDF_Initial.ObjectID).alias("ObjectIDLower"))\
    .withColumn("ClickSwitch", expr("CASE WHEN ObjectIDLower like '%confirmbuy%' THEN 'Energy' WHEN ObjectIDLower like '%requestcallback%' THEN 'Mortgages' ELSE '' END"))

这里的问题是 .contains 在我使用的 PySpark 版本 (1.6.1) 中不存在。尽管如此,还有其他解决方法我最终升级了 EMR 版本,该版本具有允许此 .contains 功能所需的 PySpark 版本。