draw_lm_cov_latent_cont: Draw samples from LM model for continuous outcomes with...

View source: R/draw_lm_cov_latent_cont.R

draw_lm_cov_latent_contR Documentation

Draw samples from LM model for continuous outcomes with covariaates in the latent model

Description

Function that draws samples from the LM model for continuous outcomes with individual covariates with specific parameters.

The function is no longer maintained. Please look at drawLMlatentcont function.

Usage

draw_lm_cov_latent_cont(X1, X2, param = "multilogit", Mu, Si, Be, Ga, fort = TRUE)

Arguments

X1

desing matrix for the covariates on the initial probabilities (n x nc1)

X2

desing matrix for the covariates on the transition probabilities (n x TT-1 x nc2)

param

type of parametrization for the transition probabilities ("multilogit" = standard multinomial logit for every row of the transition matrix, "difflogit" = multinomial logit based on the difference between two sets of parameters)

Mu

array of conditional means for the response variables (r x k)

Si

var-cov matrix common to all states (r x r)

Be

parameters affecting the logit for the initial probabilities

Ga

parametes affecting the logit for the transition probabilities

fort

to use fortran routine when possible (FALSE for not use fortran)

Value

Y

array of continuous outcomes (n x TT x r)

U

matrix containing the sequence of latent states (n x TT)

Author(s)

Francesco Bartolucci, Silvia Pandolfi, University of Perugia (IT), http://www.stat.unipg.it/bartolucci

Examples

## Not run: 
# draw a sample for 1000 units, 10 response variable and 2 covariates
n <- 1000
TT <- 5
k <- 2
nc <- 2 #number of covariates
r <- 3 #number of response variables
fort <- TRUE

Mu <- matrix(c(-2,-2,0,0,2,2), r, k)
Si <- diag(r)
Ga <- matrix(c(-log(0.9/0.1),0.5,1), (nc+1)*(k-1), k)
Be <- array(c(0,0.5,1), (nc+1)*(k-1))

#Simulate covariates
X1 <- matrix(0, n, nc)
for(j in 1:nc) X1[,j] <- rnorm(n)
X2 <- array(0, c(n,TT-1,nc))
for (t in 1:(TT-1)) for(j in 1:nc){
	if(t==1){
		X2[,t,j] <- 0.5*X1[,j] + rnorm(n)
	}else{
		X2[,t,j] <- 0.5*X2[,t-1,j] + rnorm(n)
	}
}

out <- draw_lm_cov_latent_cont(X1, X2, param = "multilogit", Mu, Si, Be, Ga, fort = fort)

## End(Not run)

LMest documentation built on Aug. 27, 2023, 5:06 p.m.