다른 OLS 모델의 샘플 밖 예측 성능을 평가하려고합니다. 가장 쉬운 시계열 회귀는 다음과 같습니다 Y_t = B0 + B1 * Y_t-30 + e_t효율적으로 RMSE를 계산하기 위해 반복적 인 샘플 밖 추정을 만드는 방법
이다가,의 50을 가정 해 봅시다 모델의 피팅 기간, 그때는 dynlm 패키지
를 사용하여 모델을 실행하자dynlm(as.zoo(Y) ~ L(as.zoo(Y), 30), start = "1996-01-01", end = timelist[i])
현재 코드에서는 색인이 끝날 때까지 실행 한 다음 해당 모델의 RMSE를 저장합니다. 그러나이 RMSE는 샘플 밖의 한 단계 앞선 예측이 아니며 현재 코드가 이미 매우 느리고 원하는 작업을 정확하게 수행하지 못하기 때문에 사용자가 제안한 것이 있는지 물어보고 싶습니다. 패키지 내 목표를 달성하는 데 사용해야합니다. 앞서 한 단계를 만들 수)
1) 특정 피팅 기간이 지나면 재귀 회귀를 실행 (확대 창, NOT 롤 창)
2 :
, 나는 다음을 수행 할을 요약하면 아웃 오브 샘플은 루트 모델의 성능지금까지와 함께이 일을 노력을 평가하기 위해 이러한 예측 대비 실제 관찰의 제곱 오차를 평균 계산)
3
예측 거대한에 대한 루프와 dynlm 패키지 ,하지만 res ults 정말 만족하지 않습니다. 나는 지금 꽤 오랫동안 해결책을 찾고 있었기 때문에 모든 의견을 크게 환영합니다. 나는 약간의 진전이 이루어 지 자마자 예제 코드를 업데이트 할 것이다.# minimal working example
require(xts)
require(zoo)
require(dynlm)
timelist <- seq.Date(from = as.Date("1996-01-01"), to = as.Date("1998-01-01"), by = "days")
set.seed(123)
Y <- xts(rnorm(n = length(timelist)), order.by = timelist)
X <- xts(rnorm(n = length(timelist), mean = 10), order.by = timelist)
# rmse container
rmse.container.full <- data.frame(matrix(NA, ncol = 3, nrow = length(index(timelist))))
colnames(rmse.container.full) <- c("Date", "i", "rmse.m1")
rmse.container.full$Date <- timelist
# fitting period
for(i in 50:length(timelist)) {
# m1
model1 <- dynlm(as.zoo(Y) ~ L(as.zoo(X), 30), start = "1996-01-01", end = timelist[i])
rmse.container.full[i, 2] <- i
rmse.container.full[i, 3] <- summary(model1)$sigma # RSME mod1 etc
print(i)
}
에 오신 것을 환영를 사용하여 수행 할 수 있습니다. [최소한의 완전하고 검증 가능한 예] (http://stackoverflow.com/help/mcve)를 만드는 방법에 대한 팁과 [R의 훌륭한 예제를 만드는] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). 아마도 [좋은 질문을 묻는] (http://stackoverflow.com/help/how-to-ask)에 대한 다음 팁도 읽을만한 가치가있을 것입니다. – lmo
결과가 "매우 만족"하지 않는 이유는 무엇입니까? 이것이 우리가 해결할 수있는 구체적인 문제는 아닙니다. 통계 모델링에 대한 도움이 필요하면 [stats.se]에 질문해야합니다. 그렇지 않으면 프로그래밍 질문이 무엇인지 명확히하고 [reproducible example]을 포함 시키십시오 (http://stackoverflow.com/questions/5963269/). 만드는 방법 -0-great-r-reproducible-example) – MrFlick
제안 해 주셔서 감사합니다 .MrFlick, 지금 살펴 보겠습니다 : [link] (https://www.otexts.org/fpp) Cross Validated를 확인하십시오. – tester