Python 如何将dataframe列与pyspark中的另一个dataframe列进行比较? #DataframeA和DataframeB匹配: DataframeA: 上校:名字“阿里”,“比拉尔”,“阿桑” DataframeB: 上校:名字“阿里”,“比拉尔”,“阿桑” #DataframeC和DataframeD不匹配: DataframeC: 上校:名字“阿里”,“阿桑”,“比拉尔” 数据框: 上校:名字“阿里”,“比拉尔”,“阿桑”

Python 如何将dataframe列与pyspark中的另一个dataframe列进行比较? #DataframeA和DataframeB匹配: DataframeA: 上校:名字“阿里”,“比拉尔”,“阿桑” DataframeB: 上校:名字“阿里”,“比拉尔”,“阿桑” #DataframeC和DataframeD不匹配: DataframeC: 上校:名字“阿里”,“阿桑”,“比拉尔” 数据框: 上校:名字“阿里”,“比拉尔”,“阿桑”,python,dataframe,apache-spark,pyspark,col,Python,Dataframe,Apache Spark,Pyspark,Col,我想在适当的位置匹配列值,任何帮助都将不胜感激。使用下面的Scala代码作为参考,并将其转换为python。根据您的dataframe名称更新valcheck行 scala> val w = Window.orderBy(lit(1)) scala> val check = dfA.withColumn("rn", row_number.over(w)).alias("A").join(dfB.withColumn("rn", row_number.over(w))

我想在适当的位置匹配列值,任何帮助都将不胜感激。

使用下面的Scala代码作为参考,并将其转换为python。根据您的
dataframe
名称更新
valcheck

    scala> val w = Window.orderBy(lit(1))
    scala> val check  = dfA.withColumn("rn", row_number.over(w)).alias("A").join(dfB.withColumn("rn", row_number.over(w)).alias("B"), List("rn"),"left").withColumn("check", when(col("A.name") === col("B.name"), lit("match")).otherwise(lit("not match"))).select("check").distinct.count

    scala> if (check == 1){
     | println("matched")} else (println("not matched"))

在python中使用
set
进行比较

DataframeC.columns
-> ["Ali", "Ahsan", "Bilal"]
DataframeD.columns
-> ["Ali", "Bilal", "Ahsan"]

DataframeC.columns == DataframeD.columns
-> False

set(DataframeC.columns) == set(DataframeD.columns)
-> True

那么问题是什么呢?