2015-09-04 66 views
0

我想從我的數據得到分位數 - 讓我們說一個變量(0.25,0.5和0.75)。我能想出如何從一個數據幀如何在連接到Greenplum(postgre)數據庫時使用R獲得特定分位數?

位數<做到這一點 - mydataframe%>%綜述(分位數(變量名,C(.25,0.5,0.75)))

然而,而不是一個數據幀,當我嘗試從表中獲得分位數(在連接到greenplum後),它似乎不起作用。

關於如何實現這個的任何想法?我的猜測是翻譯postGRE SQL查詢分位數函數不可用。

回答

0

爲了從postgreSQL中獲得分位數,可以使用percentile_cont函數。

percentile_cont(fraction) WITHIN GROUP (ORDER BY sort_expression) 

http://www.postgresql.org/docs/9.4/static/functions-aggregate.html

+0

感謝您的答覆。我使用percentile_cont來從greenplum獲取分位數。但是,在這種情況下,我通過R連接到Greenplum並編寫R函數進行數據操作。有沒有辦法從R做百分位_cont?無論如何,dpylr能做到這一點嗎? – sourav

+0

該函數從數據庫端獲得百分位數... 要在R端執行相同的操作,也許可以使用R的分位數函數? http://www.r-tutor.com/elementary-statistics/numerical-measures/percentile – PabTorre

+0

分位數函數適用於數據框。當我直接使用數據庫(而不是創建數據框)時,它給了我錯誤 – sourav