【问题标题】:Pyspark dataframe OrderBy list of columnsPyspark 数据框 OrderBy 列列表
【发布时间】:2018-11-19 20:45:34
【问题描述】:
在写入 csv 之前,我尝试在 pyspark 数据帧中使用 OrderBy 函数,但如果我有列列表,我不确定是否使用 OrderBy 函数。
代码:
Cols = ['col1','col2','col3']
df = df.OrderBy(cols,ascending=False)
【问题讨论】:
-
这个话题被错误地标记为重复。 40467449 的问题涉及数据框选择中列的排序。这个问题涉及数据框中的行排序。
标签:
python-3.x
apache-spark
pyspark
apache-spark-sql
sql-order-by
【解决方案1】:
根据文档字符串/签名:
Signature: df.orderBy(*cols, **kwargs)
Docstring:
Returns a new :class:`DataFrame` sorted by the specified column(s).
:param cols: list of :class:`Column` or column names to sort by.
:param ascending: boolean or list of boolean (default True).
两个
df = spark.createDataFrame([(1, 2, 3)] )
cols = ["_1", "_2", "_3"]
df.orderBy(cols, ascending=False)
和
df.orderBy(*cols, ascending=False)
有效,以及与list[pyspark.sql.Column] 等效。