当前位置:  开发笔记 > 编程语言 > 正文

Spark DataFrame groupBy并按降序排序(pyspark)

如何解决《SparkDataFramegroupBy并按降序排序(pyspark)》经验,为你挑选了2个好方法。

我正在使用pyspark(Python 2.7.9/Spark 1.3.1)并且有一个数据帧GroupObject,我需要按降序对其进行过滤和排序.试图通过这段代码实现它.

group_by_dataframe.count().filter("`count` >= 10").sort('count', ascending=False)

但它会引发以下错误.

sort() got an unexpected keyword argument 'ascending'

zero323.. 114

在PySpark 1.3中,sort方法不采用递增参数.您可以使用desc方法:

from pyspark.sql.functions import col

(group_by_dataframe
    .count()
    .filter("`count` >= 10")
    .sort(col("count").desc()))

desc功能:

from pyspark.sql.functions import desc

(group_by_dataframe
    .count()
    .filter("`count` >= 10")
    .sort(desc("count"))

两种方法都可以与Spark> = 1.3(包括Spark 2.x)一起使用.



1> zero323..:

在PySpark 1.3中,sort方法不采用递增参数.您可以使用desc方法:

from pyspark.sql.functions import col

(group_by_dataframe
    .count()
    .filter("`count` >= 10")
    .sort(col("count").desc()))

desc功能:

from pyspark.sql.functions import desc

(group_by_dataframe
    .count()
    .filter("`count` >= 10")
    .sort(desc("count"))

两种方法都可以与Spark> = 1.3(包括Spark 2.x)一起使用.



2> Henrique Flo..:

使用orderBy:

group_by_dataframe.count().filter("`count` >= 10").orderBy('count', ascending=False)

http://spark.apache.org/docs/2.0.0/api/python/pyspark.sql.html

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有