2
我想爲Spark SQL DataFrame編寫一個多值過濾器。在Spark-SQL中需要一個TRUE和FALSE列
我:
val df: DataFrame // my data
val field: String // The field of interest
val values: Array[Any] // The allowed possible values
,我想拿出過濾器規範。
目前,我有:
val filter = values.map(value => df(field) === value)).reduce(_ || _)
但是,這並不強大的在我獲得通過一個空白值列表的情況。爲了彌補這種情況下,我想:
val filter = values.map(value => df(field) === value)).fold(falseColumn)(_ || _)
,但我不知道如何指定falseColumn。
任何人都知道該怎麼做?
有沒有更好的方式來寫這個過濾器? (如果是這樣,我仍然需要如何獲得falseColumn的答案 - 我需要一個trueColumn爲一個單獨的部分)。