[R-SIG-Finance] Problem using stl() on data from quantmod
Jeff Ryan
jeff.a.ryan at gmail.com
Mon Dec 29 17:10:57 CET 2008
The issue is in stl which will convert (try) to ts internally:
> stl
function (x, s.window, s.degree = 0, t.window = NULL, t.degree = 1,
...
x <- na.action(as.ts(x))
if (is.matrix(x))
stop("only univariate series are allowed")
n <- length(x)
period <- frequency(x)
if (period < 2 || n <= 2 * period)
stop("series is not periodic or has less than two periods")
Which will result in an object of freq=1, and thus throw an error.
Jeff
On Mon, Dec 29, 2008 at 9:49 AM, Brian G. Peterson <brian at braverock.com> wrote:
> Ok, I see no reason at all for using as.ts here. Leave your data in xts.
>
> Wind <windspeedo at qq.com> wrote:
>
>>With the following code,
>>
>>getSymbols("^GSPC")
>>xx<-as.ts(GSPC[,4])
>>xx<-na.approx(xx)
>>plot(stl(log(xx),s.window="period"))
>>
>>There is an error:
>>Error in stl(log(xx), s.window = "period") :
>> only univariate series are allowed
>>
>>> str(log(xx))
>> ts [1:724, 1] 7.26 7.26 7.25 7.25 7.25 ...
>> - attr(*, "dimnames")=List of 2
>> ..$ : NULL
>> ..$ : chr "GSPC.Close"
>> - attr(*, "tsp")= num [1:3] 13516 14239 1
>>
>>It seems that the structure of xx is a little complicated. But I still don't know how to trim it to the simplest ts format.
>>
>>Regards,
>>Wind
>>
>>_______________________________________________
>>R-SIG-Finance at stat.math.ethz.ch mailing list
>>https://stat.ethz.ch/mailman/listinfo/r-sig-finance
>>-- Subscriber-posting only.
>>-- If you want to post, subscribe first.
>
> _______________________________________________
> R-SIG-Finance at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
> -- Subscriber-posting only.
> -- If you want to post, subscribe first.
>
--
Jeffrey Ryan
jeffrey.ryan at insightalgo.com
ia: insight algorithmics
www.insightalgo.com
More information about the R-SIG-Finance
mailing list