Hello,
Don't worry, we've seen worst questions :).
Inline.
Às 13:20 de 04/02/20, ismael ismael escreveu:
I am now aware that I should not post this type of questions on this
group. However, I would like to have some clarifications related to the
response you've already provided. The code you provided yields accurate
results, however I still have issues grasping the loop process in case 1
& 2.
In case 1, the use of "p+1" and "q+1" is still blurry to me?
1. R indexes starting from 1, both your orders p and q are 0:3. So to
assign the results to the results matrix, add 1 and get indices 1:4.
You could also set the row and column names after, to make it more clear:
dimnames(storage1) <- list(paste0("p", 0:3), paste0("q", 0:3))
2. 0L is an integer, just 0 is a floating-point corresponding to the C
language double.
class(0L) # "integer"
class(0) # "numeric"
typeof(0L) # "integer"
typeof(0) # "double"
Indices are integers, so I used integers and added 1L every iteration
through the inner loop.
This also means that in point 1. I should have indexed the matrix with p
+ 1L and q + 1L, see the output of
class(0:3)
Hope this helps,
Rui Barradas
Likewise
"0L" and " i + 1L" in case 2.
Can you please provide explanations on the loop mechanisms you've used.
Le lundi 3 février 2020 à 03:47:20 UTC−6, Rui Barradas
<ruipbarra...@sapo.pt> a écrit :
Hello,
You can solve the problem in two different ways.
1. Redefine storage1 as a matrix and extract the aic *in* the loop.
storage1 <- matrix(0, 4, 4)
for(p in 0:3){
for(q in 0:3){
storage1[p + 1, q + 1] <- arima(etc)$aic
}
}
2. define storage1 as a list.
storage1 <- vector("list", 16)
i <- 0L
for(p in 0:3){
for(q in 0:3){
i <- i + 1L
storage1[[i]] <- arima(etc)
}
}
lapply(storage1, '[[', "aic") # get the aic's.
Maybe sapply is better it will return a vector.
Hope this helps,
Rui Barradas
Às 06:23 de 03/02/20, ismael ismael via R-devel escreveu:
> Hello
> I am trying to extract AICs from an ARIMA estimation with different
> combinations of p & q ( p =0,1,2,3
> and q=0,1.2,3). I have tried using the following code unsucessfully. Can
> anyone help?
>
> code:
> storage1 <- numeric(16)
> for (p in 0:3){
>
> for (q in 0:3){
>
> storage1[p] <- arima(x,order=c(p,0,q), method="ML")}
> }
> storage1$aic
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-devel@r-project.org <mailto:R-devel@r-project.org> mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel