我在Spark 1.6中有一個下面的數據框,我想在下面的數據框過濾器裏面使用過濾器變量,但是出現錯誤。spark scala DataFrame error
val df = sc.parallelize(Seq(
("None", "a", "b"), ("c", "None", "d"), ("e", "f", "None"), ("g", "h", "i"))).toDF("A", "B", "C")
val fil = """($"A" !== "None") && ($"B" !== "None") && ($"C" !== "None")"""
當我運行這個
df.where(fil).show
我收到此錯誤:
java.lang.RuntimeException: [1.2] failure: identifier expected
($"A" !== "None") && ($"B" !== "None") && ($"C" !== "None")
^
at scala.sys.package$.error(package.scala:27)
at org.apache.spark.sql.catalyst.SqlParser$.parseExpression(SqlParser.scala:49)
at org.apache.spark.sql.DataFrame.where(DataFrame.scala:806)
請幫助。
當我做到這一點VAL FIL =($ 「A」=!=「None」)&&($「B」=!=「None」)&&($「C」=!=「None」)fil將是org.apache.spark.sql.Column類型它的工作原理,但是當我有一個字符串hwo將其轉換爲org.apache.spark.sql.Column,以便我可以在數據幀篩選器中使用它。感謝您的答覆 – rubiks