使用 ,isin 时列中的正斜杠

Forward Slash in the column while using ,isin

我似乎无法过滤其中包含斜杠的列。

例如,我的列看起来像 'A/B'、'A/B/C' 和 'A' 或 'B'。

我使用以下语法将其过滤掉。

a = a.filter(a.column.isin('A/B','A/B/C')

它告诉我这个错误:

语法错误:语法无效

你能告诉我为什么吗?

无法在 Spark-2.4 中重现,可以尝试传递包含值的列表 ['A/B','A/B/C'] .

Example:

#creating dataframe
df=spark.createDataFrame([('A/B',),('A/B/C',),('A',),('B',)],['a'])

df.show()
#+-----+
#|    a|
#+-----+
#|  A/B|
#|A/B/C|
#|    A|
#|    B|
#+-----+

from pyspark.sql.functions import *

df.filter(col("a").isin(['A/B','A/B/C'])).show()

df.filter(col("a").isin('A/B','A/B/C')).show()
#+-----+
#|    a|
#+-----+
#|  A/B|
#|A/B/C|
#+-----+