Spark DataFrame通过GroupBy删除重复项首先保留

sta*_*cks 1 cassandra apache-spark pyspark spark-dataframe

我正在使用该groupBy函数从spark DataFrame中删除重复项.对于每个组,我只想采取第一行,这将是最新的一行.

我不想执行max()聚合,因为我知道结果已经存储在Cassandra中,并且希望避免不必要的计算.使用pandas 看到这种方法,它正是我所追求的,除了Spark.

df = sqlContext.read\
            .format("org.apache.spark.sql.cassandra")\
            .options(table="table", keyspace="keyspace")\
            .load()\
            .groupBy("key")\
            #what goes here?
Run Code Online (Sandbox Code Playgroud)

Neh*_*haM 6

只是dropDuplicates应该做的工作.

试试df.dropDuplicates(Seq("column")).show.

查看此问题了解更多详情.