lsirm1pl_mar_ss {lsirm12pl} | R Documentation |
1PL LSIRM with model selection approach for missing at random data.
Description
lsirm1pl_mar_ss is used to fit 1PL LSIRM with model selection approach based on spike-and-slab priors in incomplete data assumed to be missing at random. lsirm1pl_mar_ss factorizes item response matrix into column-wise item effect, row-wise respondent effect and further embeds interaction effect in a latent space, while considering the missing element under the assumption of missing at random. The resulting latent space provides an interaction map that represents interactions between respondents and items.
Usage
lsirm1pl_mar_ss(
data,
ndim = 2,
niter = 15000,
nburn = 2500,
nthin = 5,
nprint = 500,
jump_beta = 0.4,
jump_theta = 1,
jump_gamma = 1,
jump_z = 0.5,
jump_w = 0.5,
pr_mean_beta = 0,
pr_sd_beta = 1,
pr_mean_theta = 0,
pr_spike_mean = -3,
pr_spike_sd = 1,
pr_slab_mean = 0.5,
pr_slab_sd = 1,
pr_a_theta = 0.001,
pr_b_theta = 0.001,
pr_xi_a = 1,
pr_xi_b = 1,
missing.val = 99,
verbose = FALSE
)
Arguments
data |
Matrix; a binary or continuous item response matrix for analysis. Each row represents a respondent, and each column contains responses to the corresponding item. |
ndim |
Integer; the dimension of the latent space. Default is 2. |
niter |
Integer; the total number of MCMC iterations to run. Default is 15000. |
nburn |
Integer; the number of initial MCMC iterations to discard as burn-in. Default is 2500. |
nthin |
Integer; the number of MCMC iterations to thin. Default is 5. |
nprint |
Integer; the interval at which MCMC samples are displayed during execution. Default is 500. |
jump_beta |
Numeric; the jumping rule for the beta proposal density. Default is 0.4. |
jump_theta |
Numeric; the jumping rule for the theta proposal density. Default is 1.0. |
jump_gamma |
Numeric; the jumping rule for the theta proposal density. Default is 1.0. |
jump_z |
Numeric; the jumping rule for the z proposal density. Default is 0.5. |
jump_w |
Numeric; the jumping rule for the w proposal density. Default is 0.5. |
pr_mean_beta |
Numeric; the mean of the normal prior for beta. Default is 0. |
pr_sd_beta |
Numeric; the standard deviation of the normal prior for beta. Default is 1.0. |
pr_mean_theta |
Numeric; the mean of the normal prior for theta. Default is 0. |
pr_spike_mean |
Numeric; the mean of spike prior for log gamma. Default is -3. |
pr_spike_sd |
Numeric; the standard deviation of spike prior for log gamma. Default is 1. |
pr_slab_mean |
Numeric; the mean of spike prior for log gamma. Default is 0.5. |
pr_slab_sd |
Numeric; the standard deviation of spike prior for log gamma. Default is is 1. |
pr_a_theta |
Numeric; the shape parameter of the inverse gamma prior for the variance of theta. Default is 0.001. |
pr_b_theta |
Numeric; the scale parameter of the inverse gamma prior for the variance of theta. Default is 0.001. |
pr_xi_a |
Numeric; the first shape parameter of beta prior for latent variable xi. Default is 1. |
pr_xi_b |
Numeric; the second shape parameter of beta prior for latent variable xi. Default is 1. |
missing.val |
Numeric; a number to replace missing values. Default is 99. |
verbose |
Logical; If TRUE, MCMC samples are printed for each |
Details
lsirm1pl_mar_ss
models the probability of correct response by respondent j
to item i
with item effect \beta_i
, respondent effect \theta_j
and the distance between latent position w_i
of item i
and latent position z_j
of respondent j
in the shared metric space, with \gamma
represents the weight of the distance term:
logit(P(Y_{j,i} = 1 |\theta_j,\beta_i,\gamma,z_j,w_i))=\theta_j+\beta_i-\gamma||z_j-w_i||
Under the assumption of missing at random, the model takes the missing element into consideration in the sampling procedure. For the details of missing at random assumption and data augmentation, see References. lsirm1pl_mar_ss
model include model selection approach based on spike-and-slab priors for log gamma. For detail of spike-and-slab priors, see References.
Value
lsirm1pl_mar_ss
returns an object of list containing the following components:
data |
Data frame or matrix containing the variables in the model. |
missing.val |
A number to replace missing values. |
bic |
Numeric value with the corresponding BIC. |
mcmc_inf |
Details about the number of MCMC iterations, burn-in periods, and thinning intervals. |
map_inf |
The log maximum a posteriori (MAP) value and the iteration number at which this MAP value occurs. |
beta_estimate |
Posterior estimates of the beta parameter. |
theta_estimate |
Posterior estimates of the theta parameter. |
sigma_theta_estimate |
Posterior estimates of the standard deviation of theta. |
gamma_estimate |
posterior estimates of gamma parameter. |
z_estimate |
Posterior estimates of the z parameter. |
w_estimate |
Posterior estimates of the w parameter. |
beta |
Posterior samples of the beta parameter. |
theta |
Posterior samples of the theta parameter. |
gamma |
Posterior samples of the gamma parameter. |
theta_sd |
Posterior samples of the standard deviation of theta. |
z |
Posterior samples of the z parameter, represented as a 3-dimensional matrix where the last axis denotes the dimension of the latent space. |
w |
Posterior samples of the w parameter, represented as a 3-dimensional matrix where the last axis denotes the dimension of the latent space. |
pi |
Posterior samples of phi which is indicator of spike and slab prior. If phi is 1, log gamma follows the slab prior, otherwise follows the spike prior. |
imp |
Imputation for missing Values using posterior samples. |
accept_beta |
Acceptance ratio for the beta parameter. |
accept_theta |
Acceptance ratio for the theta parameter. |
accept_z |
Acceptance ratio for the z parameter. |
accept_w |
Acceptance ratio for the w parameter. |
accept_gamma |
Acceptance ratio for the gamma parameter. |
pi_estimate |
Posterior estimation of phi. inclusion probability of gamma. if estimation of phi is less than 0.5, choose Rasch model with gamma = 0, otherwise latent space model with gamma > 0. |
imp_estimate |
Probability of imputating a missing value with 1. |
References
Little, R. J., & Rubin, D. B. (2019). Statistical analysis with missing data (Vol. 793). John Wiley & Sons. Ishwaran, H., & Rao, J. S. (2005). Spike and slab variable selection: frequentist and Bayesian strategies. The Annals of Statistics, 33(2), 730-773.
Examples
# generate example item response matrix
data <- matrix(rbinom(500, size = 1, prob = 0.5),ncol=10,nrow=50)
# generate example missing indicator matrix
missing_mat <- matrix(rbinom(500, size = 1, prob = 0.2),ncol=10,nrow=50)
# make missing value with missing indicator matrix
data[missing_mat==1] <- 99
lsirm_result <- lsirm1pl_mar_ss(data)
# The code following can achieve the same result.
lsirm_result <- lsirm(data ~ lsirm1pl(spikenslab = TRUE, fixed_gamma = FALSE,
missing_data = 'mar', missing = 99))