假設我已經中R.迴路的ARMA模型估計
USDlogreturns=diff(log(prices))
for(i in 0:5){
for(j in 0:5){
fit <- arima(USDlogreturns, order=c(i,0,j), include.mean=TRUE)
}
}
你如何讓R能夠替換一個NA矩陣的所有估計模型的係數下面的「for」循環?
假設我已經中R.迴路的ARMA模型估計
USDlogreturns=diff(log(prices))
for(i in 0:5){
for(j in 0:5){
fit <- arima(USDlogreturns, order=c(i,0,j), include.mean=TRUE)
}
}
你如何讓R能夠替換一個NA矩陣的所有估計模型的係數下面的「for」循環?
您將需要的尺寸的矩陣M
36倍13. 然後使用
M=matrix(NA,36,13)
k=0 # current row being filled in
for(i in 0:5){
for(j in 0:5){
k=k+1
fit <- arima(USDlogreturns, order=c(i,0,j), include.mean=TRUE)
if(i>0) M[k,c(1: i) ]=fit$coef[c( 1 : i)] # AR coefficients in the 2nd-6th columns
if(j>0) M[k,c(8:(7+j))]=fit$coef[c((i+1):(i+j))] # MA coefficients in the 8th-12th columns
M[k, 13 ]=tail(fit$coef,1) # "intercept" (actually, mean) in the 13th column
}
}
的列2至6將包含AR係數。
列8到12將包含MA係數。
第13列將包含「攔截」(實際上,手段,因爲arima
函數中的術語具有誤導性)。
我對這種for循環的使用有許多相關的問題。所以,如果能爲我提供我需要的命令,我將不勝感激。 – msmna93