Scala 在Spark中,我无法按现有列进行过滤
我正在尝试使用spark按数据帧中的一列进行过滤。但是火花在错误的下面抛掷Scala 在Spark中,我无法按现有列进行过滤,scala,apache-spark,pyspark,apache-spark-sql,Scala,Apache Spark,Pyspark,Apache Spark Sql,我正在尝试使用spark按数据帧中的一列进行过滤。但是火花在错误的下面抛掷 Exception in thread "main" org.apache.spark.sql.AnalysisException: cannot resolve 'Inv. Pty' given input columns: [Pstng Date, Name 1, Inv. Pty, Year] invDF.filter(col("Inv. Pty") === "2001075").show() 试试这个,倒过来
Exception in thread "main" org.apache.spark.sql.AnalysisException: cannot resolve 'Inv. Pty' given input columns: [Pstng Date, Name 1, Inv. Pty, Year]
invDF.filter(col("Inv. Pty") === "2001075").show()
试试这个,倒过来`
invDF.filter(col("`Inv. Pty`") === "2001075").show()
问题是Spark假设带有“点”的列为结构列。 要解决这个问题,您需要使用倒勾“`”。这应该起作用:
invDF.filter(col("`Inv. Pty`") === "2001075").show()
不确定,但给定输入列:[Pstng Date,Name 1,Inv.Pty,Year]列有一个额外的空间Inv.Pty,这可能是问题所在。能否使用printSchema打印数据框的架构并用它更新问题!