GenData.GGUM: Generate data from the GUM/GGUM

View source: R/Accessory.R

GenData.GGUMR Documentation

Generate data from the GUM/GGUM

Description

GenData.GGUM generates all model parameters (items and persons) and item scores.

Usage

GenData.GGUM(N, I, C, model = "GGUM", seed = 123)

Arguments

N

Number of persons (rows).

I

Number of items (columns).

C

C is the number of observable response categories minus 1 (i.e., the item scores will be in the set \{0, 1, ..., C\}). It should either be a vector of I elements or a scalar. In the latter, case it is assumed that C applies to all items.

model

A string identifying the model. Possible values are "GUM" or "GGUM" (default).

seed

An integer, allowing the user to control the generation process (for replication purposes).

Value

The function returns a list with five elements:

alpha.gen

The discrimination parameters.

delta.gen

The difficulty parameters.

taus.gen

The threshold parameters.

theta.gen

The person parameters.

data

The (NxI) data matrix. The item scores are coded 0, 1, ..., C for an item with (C+1) observable response categories.

Details

The generalized graded unfolding model (GGUM; Roberts & Laughlin, 1996; Roberts et al., 2000) is given by

P(Z_i=z|\theta_n) = \frac{f(z) + f(M-z)}{\sum_{w=0}^C\left[f(w)+f(M-w)\right]},

f(w) = exp\left\{\alpha_i\left[w(\theta_n-\delta_i)- \sum_{k=0}^w\tau_{ik}\right]\right\},

where:

  • The subscripts i and n identify the item and person, respectively.

  • z=0,\ldots,C denotes the observed answer response.

  • M = 2C + 1 is the number of subjective response options minus 1.

  • \theta_n is the latent trait score for person n.

  • \alpha_i is the item slope (discrimination).

  • \delta_i is the item location.

  • \tau_{ik} (k=1,\ldots,M ) are the threshold parameters.

Parameter \tau_{i0} is arbitrarily constrained to zero and the threshold parameters are constrained to symmetry around zero, that is, \tau_{i(C+1)}=0 and \tau_{iz}=-\tau_{i(M-z+1)} for z\not= 0.

Parameters \alpha_i are randomly uniformly drawn from the (.5, 2) interval. Parameters \delta_i are randomly drawn from the standard normal distribution bounded between -2 and 2. The threshold parameters are generated following the same procedure of Roberts, Donoghue, and Laughlin (2002). Finally, the person parameters are randomly drawn from the standard normal distribution.

If model = "GUM" the data based on the GUM (Roberts and Laughlin, 1996) model are generated. The GUM is a constrained version of the GGUM, where all discrimination parameters are equal to 1 and the item thresholds are shared by all items.

Author(s)

Jorge N. Tendeiro, tendeiro@hiroshima-u.ac.jp

Examples

gen1 <- GenData.GGUM(500, 10, 5, seed = 456)
gen1$data      # Retrieve the data.
gen1$alpha.gen # The discrimination parameters.

# Generate data based on items varying in the number of observable response categories:
gen2 <- GenData.GGUM(500, 5, c(5, 5, 5, 4, 4), seed = 789)


GGUM documentation built on Sept. 8, 2023, 5:38 p.m.