2

我有一个dataframe rawdata,我必须在列X上使用值CB,CI和CR应用筛选条件。所以我用下面的代码:如何过滤pyspark中列表中的值列?

df = dfRawData.filter(col("X").between("CB","CI","CR")) 

但我收到以下错误:

between() takes exactly 3 arguments (4 given)

请让我知道我可以解决这个问题。

回答

2

between用于检查值是否在两个值之间,输入是下限和上限。它不能用于检查列值是否在列表中。要做到这一点,请使用isin

df = dfRawData.where(col("X").isin({"CB", "CI", "CR"})) 
+0

Thanks..it works – LKA