2011-08-25 21 views
1

我正在尋找R中的百分比排名函數,但無法找到它。在TTR中是否存在runPercentRank像runFun(runMin,runMax,...)或如何編寫?

其實我對RunFun(runMinrunMax,...)下的TTR包的runPercentRank函數感興趣。該函數將採用xts對象作爲參數和時間間隔的長度,並返回一個xts對象,其百分比等級值。

這樣的事情存在嗎?有關如何有效編寫這種功能的任何提示?

+1

百分比排名?你是指分位數?或者你想要有你的xts對象的行的行列?請給我們一個例子,說明你究竟在幹什麼。因爲當我解釋它時,rollapply應該是你正在尋找的功能。 –

+0

我看不到運行百分比排名如何工作。一個等級通常具有與輸入相同的輸出數量,不像min,mean,max等。 – hadley

+0

你好。我想我在這裏找到類似的東西https://r-forge.r-project.org/scm/viewvc.php/pkg/R/DVI.R?view=markup&revision=106&root=ttr。 #一個簡單的百分比排名函數,可能與Excel的百分比函數不同,可能不同於 #。 (x,i)匹配(x [i],sort(coredata(x [(i-(n-1)):i]))) #計算每個週期的DVI幅度和拉伸 dvi.mag < - dvi.str < - rep(NA,NROW(price)) for(i in n:NROW(price)){ dvi.mag [i] < - pctRank(mag,i)/ n dvi.str [i] < - pctRank(str,i)/ n }有可能避免這個for循環嗎? – Samo

回答

4

感謝Charlie Friedemann,在R-Forge的TTR中現在有一個極其快速的runPercentRank函數。

library(quantmod) 
data(ttrc) 
pr <- runPercentRank(Cl(ttrc)) 
plot(pr, type="l") 
+0

太棒了!你會出口嗎? :-D – GSee

+0

*嘆*,我猜... –

相關問題