如何从数据框中删除行?

时间:2018-03-31 18:17:15

标签: scala apache-spark apache-spark-sql

我有dataframe df

   df.show()
   id|data|somedata
   1 |k   |v
   2 |s   |d
   3 |f   |k
   .
   .
   .

我试图从df中删除lisst = List(4,9,200)中存在id的行,所以我像这样使用drop

   val df1=df.drop(col("id").isin(lisst:_*))

但是我也没有工作

   val df1=df.filter(col("id").isin(lisst:_*).drop("id"))

但是df1在df中有相同的行

1 个答案:

答案 0 :(得分:1)

只需使用filterwhere条件就可以了;如果您不打算删除列,则不需要drop

df.filter(!col("id").isin(lisst:_*))

或:

df.where(!col("id").isin(lisst:_*))