####################### Example 1: Single time point (times=1) ######################
library(LCPA)
set.seed(123)
sim_single <- sim.LTA(N = 200, I = 4, L = 3, times = 1, type = "LCA")
print(sim_single)
####################### Example 2: LPA without covariates ######################
set.seed(123)
sim_lta <- sim.LTA(N = 200, I = 3, L = 3, times = 3, type = "LPA", constraint = "VE")
print(sim_lta)
################## Example 3: With custom covariates (times>=2) ######################
set.seed(123)
N <- 200 ## sample size
## Covariates at time point T1
covariates.inter <- rep(1, N) # Intercept term is always 1 for each n
covariates.X1 <- rnorm(N) # Covariate X1 is a continuous variable
covariates.X2 <- rbinom(N, 1, 0.5) # Covariate X2 is a binary variable
covariates.X1.X2 <- covariates.X1 * covariates.X2 # Interaction between covariates X1 and X2
covariates.T1 <- cbind(inter=covariates.inter, X1=covariates.X1,
X2=covariates.X2, X1.X2=covariates.X1.X2) # Combine into covariates at T1
## Covariates at time point T2
covariates.inter <- rep(1, N) # Intercept term is always 1 for each n
covariates.X1 <- rnorm(N) # Covariate X1 is a continuous variable
covariates.X2 <- rbinom(N, 1, 0.5) # Covariate X2 is a binary variable
covariates.X1.X2 <- covariates.X1 * covariates.X2 # Interaction between covariates X1 and X2
covariates.T2 <- cbind(inter=covariates.inter, X1=covariates.X1,
X2=covariates.X2, X1.X2=covariates.X1.X2) # Combine into covariates at T2
covariates <- list(t1=covariates.T1, t2=covariates.T2) # Combine into final covariates list
## Simulate beta coefficients
# 3x3 matrix (last column is zero because the last category is used as reference)
beta <- matrix(c( 0.8, -0.5, 0.0,
-0.3, -0.4, 0.0,
0.2, 0.8, 0.0,
-0.1, 0.2, 0.0), ncol=3, byrow=TRUE)
## Simulate gamma coefficients (only needed when times>=2)
gamma <- list(
lapply(1:3, function(l) {
lapply(1:3, function(k) if(k < 3)
runif(4, -1.0, 1.0) else c(0, 0, 0, 0)) # Last class as reference
})
)
## Simulate the data
sim_custom <- sim.LTA(
N=N, I=4, L=3, times=2, type="LPA",
covariates=covariates,
beta=beta,
gamma=gamma
)
summary(sim_custom)
Run the code above in your browser using DataLab