MSwM 패키지의 일부 기능을 이해하려고 노력 중이므로 필자가 작성한 문서에서 사용할 수 있습니다. 필자가 제공 한 예제를 재현하면서 얻지 못한 두 가지 사항이 있습니다. 첫 번째 것은 패키지에 사용 된 요약 방법과 관련이 있습니다. 을 호출 할 때 [email protected]@logLikel
을 호출 할 때 logLikel
이 양수이고 음수 인 이유는 무엇입니까? LogLik (logLikel이 아닌), AIC 및 BIC를 요약 오브젝트에서 직접 가져올 수 있습니까?Markov Switching MSwM 패키지의 AIC 및 BIC
두 번째 것은 AIC 및 BIC 정보 기준과 관련이 있습니다. 패키지에 대한 문서에 따르면, 우리가 AIC 함수를 사용해야하며, AIC 또는 BIC를 얻기 위해 k에 적절한 값을 선택해야합니다. 따라서 AIC의 경우 k는 2이고 BIC의 경우는 log(length(y))
이어야합니다. 여기서 y는 단 변량 시계열입니다. 문제는이 절차를 수행 할 때 AIC 및 BIC의 값이 summary
에있는 값과 다르다는 것입니다. 왜 그런가요? 나는 무엇이 없는가 ?? 내가 AIC와 BIC 함수를 사용하거나하여 계산하려고하면,
Markov Switching Model
Call: msmFit(object = mod, k = 2, sw = c(T, T, T, T), p = 1, control = list(parallel = F))
AIC BIC logLik
637.0736 693.479 -312.5368
그러나 :
library(MSwM)
data(example)
mod=lm(y~x,example)
mod.mswm=msmFit(mod,k=2,p=1,sw=c(T,T,T,T),control=list(parallel=F))
summary(mod.mswm)
결과의 첫 번째 라인은 다음과 같습니다
이
내가 사용하고 코드입니다 손 다른 결과를 얻는다 :#Akaike
AIC(mod.mswm,k=2) #using function. Result:641.0736
8*2-((-1)*2*[email protected]@logLikel)#by hand. Result:641.0736
#Bayesian
AIC(mod.mswm,k=log(length(example$y))) #using function. Result: 670.7039
8*log(length(example$y))-((-1)*2*[email protected]@logLikel) #by hand. Result: 670.7039
대단히 감사합니다!
답변 해 주셔서 대단히 감사합니다, Alexander! – Fer