simulate_likert {latent2likert}R Documentation

Simulate Likert Scale Item Responses

Description

Simulates Likert scale item responses based on a specified number of response categories and the centered parameters of the latent variable.

Usage

simulate_likert(n_levels, cp)

Arguments

n_levels

number of response categories for the Likert scale item.

cp

centered parameters of the latent variable. Named vector including mean (mu), standard deviation (sd), and skewness (skew). Skewness must be between -0.95 and 0.95.

Details

The simulation process uses the following model detailed by Boari and Nai-Ruscone. Let XX be the continuous variable of interest, measured using Likert scale questions with KK response categories. The observed discrete variable YY is defined as follows:

Y=k, if   xk1<Xxk for   k=1,,K Y = k, \quad \text{ if } \ \ x_{k - 1} < X \leq x_{k} \quad \text{ for } \ \ k = 1, \dots, K

where xkx_{k}, k=0,,Kk = 0, \dots, K are endpoints defined in the domain of XX such that:

=x0<x1<<xK1<xK=. -\infty = x_{0} < x_{1} < \dots < x_{K - 1} < x_{K} = \infty.

The endpoints dictate the transformation of the density fXf_{X} of XX into a discrete probability distribution:

Pr(Y=k)=xk1xkfX(x)dx for   k=1,,K. \text{Pr}(Y = k) = \int_{x_{k - 1}}^{x_{k}} f_{X}(x) \, dx \quad \text{ for } \ \ k = 1, \dots, K.

The continuous latent variable is modeled using a skew normal distribution. The function simulate_likert performs the following steps:

Value

A named vector of probabilities for each response category.

References

Boari, G. and Nai Ruscone, M. (2015). A procedure simulating Likert scale item responses. Electronic Journal of Applied Statistical Analysis 8(3), 288–297. doi:10.1285/i20705948v8n3p288

See Also

discretize_density for details on how to calculate the optimal endpoints.

Examples

cp <- c(mu = 0, sd = 1, skew = 0.5)
simulate_likert(n_levels = 5, cp = cp)
cp2 <- c(mu = 1, sd = 2, skew = -0.3)
simulate_likert(n_levels = 7, cp = cp2)

[Package latent2likert version 1.2.1 Index]