2

나는 값이 CB, CI 및 CR 인 열 X에 필터 조건을 적용해야하는 데이터 프레임 rawdata를 가지고 있습니다. 그래서 아래의 코드를 사용 :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

감사합니다. 작동합니다. – LKA