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