1
に存在する場合、これは私がこれまで持っているものです。フィルタースパーク/ Scalaのデータフレームの列は、私はスパーク1.4.0を使用していますセット
data.filter($"myColumn".in(lit("A"), lit("B"), lit("C"), ...))
機能litが列リテラルに変換します。
理想的には私はセットでの私のA、B、Cを入れて、次のようにチェックします:
val validValues = Set("A", "B", "C", ...)
data.filter($"myColumn".in(validValues))
正しい構文は何ですか?代替の簡潔なソリューションはありますか?
エラー:型の不一致。見つかった:Seq [String] required:Seq [org.apache.spark.sql.Column] – Gevorg
また、「:_ *」(私はここに新しい...) – Gevorg
それはSparkの新しいバージョンでのみ機能していたからです。 'in'メソッドは' Column * 'を入力として受け入れるので、普通のコレクション(この場合は' Seq [Column] ')をそのコレクションのvarargsバージョンに変換するために' ":_ *" ' '列*') –