val df = sc.parallelize(Seq(("a", 1), ("a", 2), ("b", 2), ("b", 3), ("c", 1))).toDF("id", "num")
对整数类型过滤
逻辑运算符:>, <, ===
df.filter($"num"===2)
df.filter($"num">2)
df.filter($"num"<2)
或者
df.filter("num=2")
df.filter("num>2")
df.filter("num<2")
传递参数过滤
val ind:Int=2;
df.filter($"num"===ind)
df.filter($"num">ind)
df.filter($"num"<ind)
对字符串过滤
df.filter($"id".equalTo("a"))
传递参数过滤
val str = s"a"
df.filter($"id"equalTo(str))
当dataframe没有字段名时,可以用默认的字段名[_1, _2, .....]来进行判断
多条件判断
逻辑连接符 &&(并)、||(或)
df.filter($"num"===2 && $"id".equalTo("a")
df.filter($"num"===1 || $"num"===3)