[英]Using Spark DataFrame filter with a List of column names
我必須使用List[String]
過濾 Spark DataFrame 中的非空列值:
val keyList = List("columnA", "columnB", "columnC", "columnD", ...)
對於名為key
的單個列,語法應為:
val nonNullDf = df.filter(col("key").isNotNull)
我的問題是如何使用keyList
進入前一個過濾器?
您可以通過在keyList
上執行 map-reduce 來生成過濾器。
如果要保留所有列都不是 null 的行,請使用and
, or
如果要保留任何列不是 null 的行,請使用或。
val nonNullDf = df.filter(keyList.map(col(_).isNotNull).reduce(_ and _))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.