Apache spark 使用Pyspark中的行号查找重复项

Apache spark 使用Pyspark中的行号查找重复项,apache-spark,pyspark,pyspark-sql,Apache Spark,Pyspark,Pyspark Sql,我编写了一个SQL查询,它实际查找表中的重复高程以及其他唯一列。这是我的问题。我想把它转换成pyspark dup_df=spark.sql' 选择g.pbkey, g、 朗, g、 拉特, g、 仰角 从数据中提取g 内连接 选择标高, 将高程计为NumOccurrences 从数据 按高程分组 将COUNTelevation>1作为a上的a。标高=g。标高 ' 在Scala上,可以使用Window实现,guess可以转换为Python: val data = Seq(1, 2, 3, 4,

我编写了一个SQL查询,它实际查找表中的重复高程以及其他唯一列。这是我的问题。我想把它转换成pyspark

dup_df=spark.sql' 选择g.pbkey, g、 朗, g、 拉特, g、 仰角 从数据中提取g 内连接 选择标高, 将高程计为NumOccurrences 从数据 按高程分组 将COUNTelevation>1作为a上的a。标高=g。标高 '
在Scala上,可以使用Window实现,guess可以转换为Python:

val data = Seq(1, 2, 3, 4, 5, 7, 3).toDF("elevation")
val elevationWindow = Window.partitionBy("elevation")

data
  .withColumn("elevationCount", count("elevation").over(elevationWindow))
  .where($"elevationCount" > 1)
  .drop("elevationCount")
输出为:

+---------+
|elevation|
+---------+
|3        |
|3        |
+---------+

您目前的做法有什么问题?性能是唯一的问题。将在TB的数据上运行它。但您当前正在pyspark中运行。。。。所以我不明白你期望什么!