我試圖在DataFrame計算列的百分比?我不能找到任何percentile_approx功能引發聚合函數。如在蜂巢percentile_approx和我們可以以以下方式使用它
hiveContext。sql(“選擇percentile_approx (“Open_Rate”, 0.10)從myTable);
但是我想使用火花DataFrame性能的原因。
樣本數據集
| |用戶ID Open_Rate | - - - - - - - - - - - - - - - - - - - | A1 | 10.3 | 4.04 | B1 | | | C1 | 21.7 | | D1 | 18.6 |
我想知道有多少用戶分為10百分比或20百分位等等。我想是這樣的
df.select ($ " id ",百分位(Open_Rate)美元),告訴
你可以試著自己的版本的代碼。它似乎並不像這個功能是建立DataFrames火花。您可能需要使用窗口類來完成這項工作。這是一篇博客文章中一些細節://m.eheci.com/blog/2015/07/15/introducing-window-functions-in-spark-sql.html