make_scoring_matrix_aem: Make scoring matrix

View source: R/scoring_matrices.R

make_scoring_matrix_aemR Documentation

Make scoring matrix

Description

Makes response matrix, i.e. matrix describing how each latent trait (represented in columns) affects (or not) chances to choose each response category (represented in rows) assuming effects of acquiescence, extreme and middle response styles.

Usage

make_scoring_matrix_aem(
  responses,
  sequence = c("mae", "mea", "aem", "ame", "ema", "eam", "gpcm"),
  nMiddle = 2L,
  nExtreme = 1L,
  nAcquiescence = floor(length(responses)/2),
  reversed = FALSE,
  aType = c("separate", "common"),
  iType = c("separate", "common"),
  eType = c("common", "separate")
)

Arguments

responses

a vector of available responses (categories) - can be a character vector or positive integer describing number of responses

sequence

a string: "gpcm" or a three-letters sequence describing the order of nodes in the IRTree:

  • 'm' stands for choosing between middle category and some other category

  • 'a' stands for choosing between acquiescence response (i.e. located after/below a middle one) and some other response

  • 'e' stands for choosing between extreme category and some other category

nMiddle

the (maximum) number of middle categories

nExtreme

(half of) the number of extreme categories

nAcquiescence

the number of acquiescence categories

reversed

a logical value - is item a reversed one? (see details)

aType

determines a way in which scoring pattern for acquiescence is generated when it appears in different branches of the IRTree (whether to create separate columns allowing for different discrimination of the acquiescence in different nodes of the tree or to create only a single column holding discrimination in different nodes of the tree constant)

iType

determines a way in which scoring pattern for additional (see the description of the 'aType' parameter above) intensity trait will be generated (see details)

eType

determines a way in which scoring pattern for extremity trait will be generated (see details)

Details

sequence other than "gpcm":

For important remarks on the possibilities and limitations of interpretation of IRTree models, that are represented by this type of scoring matrices, see Plieninger (2020).

For number of responses between 5 and 6 function generates scoring matrix in a way mimicking Böckenholt's approach (2017) to describe response to the item as a sequence of binary decisions involving choosing of the middle, extreme and acquiescence categories - this decisions may be made in different order, what is controlled by argument sequence.

Please note that following Böckenholt acquiescence trait is managed in a little different way that the other two. If choice involving acquiescence may be made in different nodes of IRTree (i.e. for different combinations of values in previous columns of the scoring matrix), separate column describing decision in each node (for each combination) is created by default (and names of these columns are a followed by integer index). That allows for specifying different IRT parameters for each node. Setting argument aType = "common" allows to collapse these column into one if you want to constrain model parameters between nodes in a convenient way.

With less than 5 possible responses functions apply the same logic, but not all of the three aforementioned styles can be involved because lack of variability in possible responses.

With more than 6 possible responses there must be additional trait added to scoringMatrix to describe process of choice between all the possible responses. In such a case function adds additional columns to a scoring matrix that names are i (standing for intensity) followed by an index and are filled up with scores for such combinations of values in previous columns of the scoring matrix that occur more than once. Scores in these columns are sequences of non-negative integers either increasing (reversed=FALSE) or decreasing (reversed=TRUE) that are generated independent for each unique combination of values in the previous columns and by default each of such combinations is described by a separate column (allowing for specification of different model parameters). Analogously to acquiescence trait these columns can be collapsed into one by setting iType = "common".

Also extremity trait can be modeled as following the same process in different branches of the tree or to be separated into distinct processes/pseudoitems, as some researchers postulate (Merhof & Meiser, 2023). Please note that for this trait - contrary to acquiescence and intensity teh default behaviour is to keep the only one, common process.

sequence is "gpcm":

In this case a GPCM scoring matrix is generated mimicking approach of Plieninger (2016), i.e. assuming that response process is a gpcm and four factors: intensity of the trait that is not a response style (column i), tendency to choose middle categories (column m) tendency to choose extreme categories (column e) and tendency to choose acquiescence categories (column a) contribute altogether to propensity of choosing each response.

Value

a matrix of integers

Examples

# Bockenholt 2017: 73
(bockenholtMAE5 <- make_scoring_matrix_aem(5, "mae"))
# Bockenholt 2017: 76
(bockenholtMAE6 <- make_scoring_matrix_aem(6, "mae"))
# Bockenholt 2017: 77
(bockenholtAEM6 <- make_scoring_matrix_aem(6, "aem"))
# Merhof & Meiser, 2023
(merhofMeiser4 <- make_scoring_matrix_aem(4, "aem", eType = "separate"))
# Plieninger 2016: 39
(plieninger5 <- make_scoring_matrix_aem(5, "gpcm"))
(plieninger5r <- make_scoring_matrix_aem(5, "gpcm", reversed = TRUE))

# some more complicated cases:
make_scoring_matrix_aem(10, "ema", nMiddle = 3, nExtreme = 2)
make_scoring_matrix_aem(10, "ema", nMiddle = 3, nExtreme = 2,
                        aType = "common", iType = "common")
make_scoring_matrix_aem(9, "mae", nMiddle = 3, nExtreme = 2, reversed = TRUE)

tzoltak/rstyles documentation built on Dec. 4, 2024, 5:16 p.m.