[英]how can I sort RDD data (key, value) by value in Scala?
我已經嘗試過像這樣的方法“ sortBy
”:
ranks.sortBy(x=> x._2, false);
但是,等級的值未排序,細節顯示在圖片中。 我失敗的解決方案
那么我應該如何糾正我的解決方案? 為什么會失敗? 感謝幫助!
我認為在您的情況下, ranks
是一個var
。
當您調用ranks.sortBy...
,您並未將其分配給任何變量-您只是在要求編譯器對內容進行sortBy並將其丟棄。
您只需要將此變量分配給一個變量,它就可以工作( ranks = ranks.sortBy(...)
或val something = ranks.sortBy(...)
)。 這是REPL中的一個簡單示例:
scala> var l = List(3, 1, 2)
l: List[Int] = List(3, 1, 2)
scala> l.sortBy(x => x)
res1: List[Int] = List(1, 2, 3)
scala> l // will be the same as before
res2: List[Int] = List(3, 1, 2)
scala> l = l.sortBy(x => x)
l: List[Int] = List(1, 2, 3)
scala> l // will have changed
res3: List[Int] = List(1, 2, 3)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.