如何过滤pyspark中列表中值的列?

时间:2017-10-12 10:30:13

标签: apache-spark pyspark apache-spark-sql spark-dataframe pyspark-sql

我有一个数据帧rawdata,我必须在列X上应用值CB,CI和CR的过滤条件。所以我使用了以下代码:

{{1}}

但是我收到以下错误:

  

之间的()取3个参数(给定4个)

请告诉我如何解决此问题。

1 个答案:

答案 0 :(得分:12)

between用于检查值是否在两个值之间,输入是下限和上限。它不能用于检查列值是否在列表中。为此,请使用isin

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