簡體   English   中英

R - 如何對來自其他軟件包的函數使用rollapply,例如來自tseries的maxdrawdown?

[英]R - How to use rollapply on functions from other package like maxdrawdown from tseries?

我試圖用rollapply從動物園包功能maxdrawdown來自T系列包裝:

library(zoo)
library(tseries)
x <- c(1,2,4,6,7,10,8,6,5,4,6,7,8)
y <- zoo(x)
z <- rollapply(y,3,maxdrawdown,fill=NA,align="right")

但是我收到此錯誤消息:

Error in zoo(rval, index(x)[i]) : 
 “x” : attempt to define invalid zoo object

這是否意味着我不能使用rollapply上功能maxdrawdown 是否有替代解決方案來解決這個問題?

maxdrawdown返回一個列表,但我們只想要該列表的maxdrawdown組件,所以試試這個:

rollapplyr(y, 3, function(x) maxdrawdown(x)$maxdrawdown, fill = NA)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM