pseudoResHSMM: HSMM pseudo-residuals

Description Usage Arguments Details Value References Examples

View source: R/pseudoResHSMM.R

Description

Pseudo-residuals based on the one-step ahead forecast distributions under the estimated (penalised) HSMM. This function can only be used for HSMMs with state-dependent normal or gamma distributions.

Usage

1

Arguments

y

vector containing the observations.

mod

model object as returned by pmleHSMM.

Details

A good model fit is indicated by standard normally distributed pseudo-residuals.

Value

returns a vector containing the forecast pseudo-residuals.

References

For more details about pseudo-residuals in the context of HMMs, see:

Zucchini, W., MacDonald, I.L. and Langrock, R. (2016): Hidden Markov models for time series: An introduction using R. 2nd edition. Chapman & Hall/CRC, Boca Raton.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
# fit 3-state HSMM to hourly muskox step length
# initial values
p_list0<-list()
p_list0[[1]]<-c(dgeom(0:9,0.2),1-pgeom(9,0.2))
p_list0[[2]]<-c(dgeom(0:9,0.2),1-pgeom(9,0.2))
p_list0[[3]]<-c(dgeom(0:9,0.2),1-pgeom(9,0.2))
omega0<-matrix(0.5,3,3)
diag(omega0)<-0
mu0<-c(5,100,350)
sigma0<-c(3,90,300)
# fit HSMM with state-dependent gamma distributions, lambda=c(1000,1000,1000) 
# and difference order of 3
PHSMM<-pmleHSMM(y=muskox$step,N=3,p_list=p_list0,mu=mu0,sigma=sigma0,
  omega=omega0,lambda=c(1000,1000,1000),order_diff=3,y_dist='gamma')
# pseudo-residuals
pseudoRes<-pseudoResHSMM(y=muskox$step,PHSMM)
hist(pseudoRes,probability=TRUE)
z<-seq(-3,3,0.01)
lines(z,dnorm(z),col='blue')

JenniferPohle/PHSMM documentation built on Jan. 27, 2021, 7:07 p.m.