[R] extracting coefficients from ar() output
T.Riedle
tr206 at kent.ac.uk
Fri Jun 17 20:34:36 CEST 2016
Thank you very much.
Here is the error message.
> WriteXLS(coefar,ExcelFileName = "R.xls",SheetNames="test")
Error in WriteXLS(coefar, ExcelFileName = "R.xls", SheetNames = "test") :
'x' must be the name of a data frame, the name of a list of data frames, a data frame object, a list object of data frames.
-----Original Message-----
From: David Winsemius [mailto:dwinsemius at comcast.net]
Sent: 17 June 2016 19:27
To: T.Riedle
Cc: peter dalgaard; R-help at r-project.org
Subject: Re: [R] extracting coefficients from ar() output
> On Jun 17, 2016, at 11:23 AM, T.Riedle <tr206 at kent.ac.uk> wrote:
>
> 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)
Just a guess (since you didn't include the error message) but do you have a length-1 character vector named `test`. I thought not. So try using SheetNames = 'test'
--
David.
>
> 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
>
> ______________________________________________
> 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.
David Winsemius
Alameda, CA, USA
More information about the R-help
mailing list