当前位置: 首页 > 知识库问答 >
问题:

Spark DataFrame group按降序排序(pyspark)

司空劲
2023-03-14

我正在使用pyspark(Python 2.7.9/Spark 1.3.1),并且有一个需要过滤的dataframe GroupObject

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

但它抛出了以下错误。

sort() got an unexpected keyword argument 'ascending'

共有3个答案

华锦程
2023-03-14

到目前为止,最方便的方法是使用:

df.orderBy(df.column_name.desc())

不需要特殊的进口。

锺离刚洁
2023-03-14

使用orderBy:

df.orderBy('column_name', ascending=False)

完整答案:

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

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

沙富
2023-03-14

在PySpark 1.3中,排序方法不接受升序参数。可以使用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一起使用

 类似资料:
  • 我有一个HashMap与作为关键和一个值作为价值。 我的目标是通过降序值对Hashmap进行排序。应在

  • 我们必须按降序对数组进行部分排序。 我知道d::partial_sort但它是按升序排列的。 http://en.cppreference.com/w/cpp/algorithm/partial_sort. 是他们的任何其他这样的功能,可以这样做,或任何快速算法这样做。

  • 我正在使用PySpark(Python 2.7.9/Spark 1.3.1),并有一个需要过滤的dataframe GroupObject 但它会抛出以下错误。

  • 问题内容: 如何在如下所示的SQLAlchemy查询中使用ORDER BY ? 此查询有效,但以升序返回: 如果我尝试: 然后我得到:。 问题答案: 来自@ jpmc26的用法

  • 我有一个通用的链表,目前由int组成,我想在默认情况下按升序排序,然后切换一个布尔值,按降序排序。我该怎么做?

  • 问题内容: 以下代码将按 升序 对数组进行排序: 我需要 按降序 排序。如何使用比较器执行此操作? 请帮忙。 问题答案: 对于原始数组类型,您必须编写一个反向排序算法: 或者,您可以将转换为并编写比较器: 或使用,因为它仅适用于非原始数组类型。 最后,