Estou usando o pyspark (Python 2.7.9 / Spark 1.3.1) e tenho um GroupObject de dataframe que preciso filtrar e classificar em ordem decrescente. Tentar consegui-lo por meio deste pedaço de código.
group_by_dataframe.count().filter("`count` >= 10").sort('count', ascending=False)
Mas isso gera o seguinte erro.
sort() got an unexpected keyword argument 'ascending'
python
apache-spark
dataframe
pyspark
apache-spark-sql
rclakmal
fonte
fonte
No pyspark 2.4.4
1) group_by_dataframe.count().filter("`count` >= 10").orderBy('count', ascending=False) 2) from pyspark.sql.functions import desc group_by_dataframe.count().filter("`count` >= 10").orderBy('count').sort(desc('count'))
Não há necessidade de importar em 1) e 1) é curto e fácil de ler,
então eu prefiro 1) em vez de 2)
fonte
você pode usar groupBy e orderBy da seguinte maneira também
dataFrameWay = df.groupBy("firstName").count().withColumnRenamed("count","distinct_name").sort(desc("count"))
fonte