2015-12-29 171 views
13

私はpyspark(Python 2.7.9/Spark 1.3.1)を使用しており、降順で&をフィルタリングする必要があるデータフレームGroupObjectを持っています。このコードを使ってそれを達成しようとしています。Spark DataFrame group降順で並べ替えて並べ替え

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

ただし、次のエラーが発生します。

sort() got an unexpected keyword argument 'ascending' 

答えて

20

PySpark 1.3では、sortでは昇順のパラメータを使用しません。

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")) 

両方の方法は、スパーク(火花2.xのを含む)> = 1.3と一緒に使用することができる代わりに、desc方法を使用することができます。

0

- しかし、ソートの再という名前の列名(別名):

from pyspark.sql.functions import desc 

df=df.count().withColumnRenamed("count", "newColName")\ 
     .filter("`count` >= 10") 
     .sort(desc("newColName")) 
df.show() 
関連する問題