# Example 1: Basic usage with default settings
sim.dat <- generateData(n = 300, p = 50, q = 20, rho = 0.1, seed = 857)
# Check dimensions and missing rate
dim(sim.dat$X) # 300 x 50
dim(sim.dat$Z) # 300 x 20
mean(is.na(sim.dat$Z)) # approximately 0.1
# Example 2: Variable missing rates with MAR mechanism
rho.vec <- seq(0.05, 0.25, length.out = 20)
sim.dat <- generateData(n = 300, p = 50, q = 20,
rho = rho.vec,
missing.type = "MAR")
# Example 3: High sparsity in coefficient matrix
sim.dat <- generateData(n = 500, p = 100, q = 30,
rho = 0.15,
Beta.row.sparsity = 0.1, # 10% active predictors
Beta.elm.sparsity = 0.3) # 30% active in each row
# Example 4: User-supplied matrices
n <- 300; p <- 50; q <- 20
X <- matrix(rnorm(n*p), n, p)
Beta <- matrix(rnorm(p*q) * rbinom(p*q, 1, 0.1), p, q) # 10% non-zero
Theta <- diag(q) + 0.1 # Simple precision structure
sim.dat <- generateData(X = X, Beta = Beta, Theta = Theta,
n = n, p = p, q = q,
rho = 0.2, missing.type = "MNAR")
# \donttest{
# Example 5: Use generated data with missoNet
library(missoNet)
sim.dat <- generateData(n = 400, p = 50, q = 10, rho = 0.15)
# Split into training and test sets
train.idx <- 1:300
test.idx <- 301:400
# Fit missoNet model
fit <- missoNet(X = sim.dat$X[train.idx, ],
Y = sim.dat$Z[train.idx, ],
lambda.beta = 0.1,
lambda.theta = 0.1)
# Evaluate on test set
pred <- predict(fit, newx = sim.dat$X[test.idx, ])
# }
Run the code above in your browser using DataLab