Существует две функции col
: одна из класса класса данных и одна из org.apache.spark.sql.functions . В этом простом случае оба будут работать:
t.where(t.col("A").gt(5).or(t.col("B").gt(5))).show() //from dataset
import org.apache.spark.sql.functions._
t.where(col("A").gt(5).or(col("B").gt(5))).show() //from functions
В зависимости от того, кого из двух вы хотите избежать, вы можете выбрать другой.
Если вы используете Scala, также $
работает:
t.where($"A">5 or $"B">5).show
Вы также можете полностью переключиться на синтаксис sql:
t.where("A > 5 or B > 5").show
Если разрешено filter
, версия lamdba также будет работать:
t.filter(r => r.getInt(0) > 5 || r.getInt(1) > 5).show