我试过 df.orderBy("col1").show(10)
但它按升序排序 . df.sort("col1").show(10)
也按降序排序 . 我查看了stackoverflow,我发现的答案都已过时或referred to RDDs . 我想在spark中使用本机数据帧 .
我试过 df.orderBy("col1").show(10)
但它按升序排序 . df.sort("col1").show(10)
也按降序排序 . 我查看了stackoverflow,我发现的答案都已过时或referred to RDDs . 我想在spark中使用本机数据帧 .
6 回答
对于
sort
方法,它在org.apache.spark.sql.DataFrame中:请注意
$
中的$
和.desc
列,以便对结果进行排序 .在Java的情况下:
如果我们使用
DataFrames
,在应用连接(这里是内连接)时,我们可以在每个DF中选择不同的元素之后进行排序(在ASC中):其中
e_id
是应用连接的列,在ASC中按工资排序 .此外,我们可以使用Spark SQL:
哪里
spark - > SparkSession
薪水 - > GlobalTemp查看 .
最简单的方法是添加参数ascending = False:
参考:http://spark.apache.org/docs/2.1.0/api/python/pyspark.sql.html#pyspark.sql.DataFrame.orderBy
您还可以通过导入spark sql函数对列进行排序
要么
importing sqlContext.implicits._
要么