[R] extracting coefficients from ar() output
T.Riedle
tr206 at kent.ac.uk
Fri Jun 17 20:23:26 CEST 2016
Thank you very much, Peter. I played a bit and found a solution.
> rollingarmaols<-rollapply(data,width=36,function(data) ar(data,order.max=1,method="ols"))
> coefar<-apply(rollingarmaols, 1, getElement, "ar")
> head(coefar,50)
[1] 0.9430692 0.9140253 0.9236898 0.9426744 0.9465110 0.9318470 0.9033054 0.9206048 0.9243736 0.9129082
[11] 0.9181811 0.9350779 0.9464205 0.9410245 0.9335568 0.9201928 0.8869414 0.8320984 0.8185671 0.7989182
[21] 0.7454876 0.6388364 0.6797046 0.6704642 0.7077033 0.8895698 0.8755445 0.8965050 0.8969068 0.8891385
[31] 0.9284835 0.9628297 0.9674624 0.9524462 0.9423693 0.9629843 0.9996613 1.0000295 0.9845222 0.9877242
[41] 0.9582863 0.9596756 0.9415847 0.9471677 0.9447052 0.9324048 0.9171082 0.8928825 0.9133751 0.9203662
I am trying to export the data to Excel using WriteXLS:
> WriteXLS(coefar, ExcelFileName = "R.xls", SheetNames = test)
Unfortunately, it doesn't work. How can I export the data to Excel?
-----Original Message-----
From: peter dalgaard [mailto:pdalgd at gmail.com]
Sent: 16 June 2016 18:49
To: William Dunlap
Cc: T.Riedle; R-help at r-project.org
Subject: Re: [R] extracting coefficients from ar() output
> On 16 Jun 2016, at 17:07 , William Dunlap via R-help <r-help at r-project.org> wrote:
>
> help(ar) should tell you how to get the coefficients. If, like me,
> you don't read help files, you can use str() to look at the structure
> of ar's output.
Also notice that the output of rollapply is not an ar object. More likely a list of them, so try rollingarma[[i]]$ar or maybe lapply(rollingarma, function(x)x$ar) or sapply(rollingarma, "[[", "ar") or...
>
>> str(a <- ar(sin(1:30), aic=TRUE))
> List of 14
> $ order : int 2
> $ ar : num [1:2] 1.011 -0.918
> $ var.pred : num 0.0654
> $ x.mean : num 0.00934
> $ aic : Named num [1:15] 61.215 53.442 0 0.985 2.917 ...
> ..- attr(*, "names")= chr [1:15] "0" "1" "2" "3" ...
> $ n.used : int 30
> $ order.max : num 14
> $ partialacf : num [1:14, 1, 1] 0.5273 -0.9179 -0.1824 -0.0477 -0.0393 ...
> $ resid : num [1:30] NA NA -0.0145 -0.0734 -0.0725 ...
> $ method : chr "Yule-Walker"
> $ series : chr "sin(1:30)"
> $ frequency : num 1
> $ call : language ar(x = sin(1:30), aic = TRUE)
> $ asy.var.coef: num [1:2, 1:2] 0.00583 -0.00308 -0.00308 0.00583
> - attr(*, "class")= chr "ar"
>> a$ar
> [1] 1.0112512 -0.9178554
>
>
>
>
> Bill Dunlap
> TIBCO Software
> wdunlap tibco.com
>
> On Thu, Jun 16, 2016 at 4:34 AM, T.Riedle <tr206 at kent.ac.uk> wrote:
>
>> Hi everybody,
>>
>> I am trying to run an AR1 model using the ar() function as shown below.
>>
>>> rollingarma<-rollapply(data,width=36,function(data)
>>> ar(data,aic=TRUE))
>>> head(rollingarma,50)
>> order ar var.pred x.mean aic n.used order.max
>> partialacf resid method series
>> [1,] 1 0.7433347 1.382908 49.99861 Numeric,16 36 15
>> Numeric,15 Numeric,36 "Yule-Walker" "data"
>> [2,] 1 0.7410181 1.565755 49.94778 Numeric,16 36 15
>> Numeric,15 Numeric,36 "Yule-Walker" "data"
>> [3,] 1 0.7636966 1.660581 49.86861 Numeric,16 36 15
>> Numeric,15 Numeric,36 "Yule-Walker" "data"
>>
>>
>> I get the table as shown above if I use head().
>>
>> How can I extract the ar coefficients from this table? I have already
>> tried coef() and rollingarma$ar but both do not work.
>> What can I do?
>>
>> Thanks for your help.
>>
>>
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
--
Peter Dalgaard, Professor,
Center for Statistics, Copenhagen Business School Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Phone: (+45)38153501
Office: A 4.23
Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com
More information about the R-help
mailing list