Learn R Programming

RM.weights (version 2.0)

RM.w: Estimation of the weighted Rasch model using CML

Description

This function computes item and raw score parameter estimates of a Rasch model for binary item responses by using weighted CML estimation. Input data should be a 0/1 matrix (1 = Yes). Residual correlation, fit statistics and corresponding standard errors, Rasch reliability and individual fit statistics are also reported.

Usage

RM.w(.data, .w = NULL, .d=NULL, country=NULL, se.control = TRUE, 
quantile.seq = NULL, write.file = FALSE, max.it=100)

Arguments

.data

Input 0/1 data matrix or data frame; affirmative responses must be coded as 1s. Rows represent respondents, columns represent items. Missing values must be coded as NA.

.w

Vector of sampling weights. The length must be the same as the number of rows of .data. If left unspecified, all the individuals will be equally weighted (.w = rep(1, nrow(.data))).

.d

Optional vector for the assumption on the extreme raw score parameters. Default is 0.5 and (k-0.5), k being the maximum number of items (columns of .data).

country

Optional (character) name of the dataset.

se.control

Are the measurement errors for respondent extreme parameters to be calculated based on raw scores 0.5 and (k-0.5)? If FALSE, measurement errors for those parameters are based on the pseudo-raw-scores specified in the .d vector. Default is TRUE.

quantile.seq

Quantiles corresponding to the observed and the expected individual fit statistic distributions. Default is seq(0,1,0.01).

write.file

If TRUE, a CSV file with the main results will be saved in the working directory.

max.it

Maximum number of iterations item parameters' estimation.

Value

A list with the following elements:

country Name of the country or the application.
b Item severity parameters.
a Raw score severity parameters.
se.b Item severities' standard error.
se.a Raw score parameters' standard error.
infit Items' infit statistics.
outfit Items' outfit statistics.
reliab Rasch reliability.
reliab.fl Rasch reliability (equally weighted across raw scores).
infit.person Respondents' infits.
outfit.person Respondents' outfits.
q.infit.theor Quintiles of theoretical person infits.
q.infit Quintiles of person infits.
q.outfit.theor Quintiles of theoretical person outfits.
q.outfit Quintiles of person outfits.
res.corr Residual correlation matrix.
se.infit Standard errors of infits.
mat.res Matrix of individual residuals for each item.
d Pseudo raw scores for the calculation of extreme raw score parameters.
XX Data matrix.
wt Vector of post-stratification sampling weights.
n.compl Number of complete, non-extreme cases.
wt.rs Weighted (absolute) distribution of respondents across raw scores.
wt.rs Weighted (relative) distribution of respondents across raw scores.
converged Character indicating if the item estimation algorithm has reached convergence or the maximum number of iterations has been reached without convergence.

Details

The weighted CML method is used to estimate the item parameters. Respondent parameters are estimated post-hoc as maximum likelihood given the item parameters. Cases with missing responses to some items can be included in the input data, but will not be used to estimate the Rasch model. Missing responses should be coded as NA in the input data file.

As the parameters for the extreme raw scores (0 and k), are undefined under the CML, some assumptions are needed unless the proportions of respondents with those raw scores are so small that they can be considered to be measured without error. Vector .d gives the option to include up to four alternative assumptions on the pseudo-raw-scores on which calculation of parameters for extreme raw scores will be based. More in detail, .d can be a two, three or four element vector:

  • If length(.d) = 4, then the first two elements must refer to the assumptions for raw score 0, and the second two elements for raw score k. For instance .d = c(0.1, 0.7, 7.1, 7.6), if the maximum raw score is 8.

  • If length(.d) = 3, then the first two elements can either refer to the assumptions upon raw score 0 or raw score k, and the last one is defined accordingly. For instance .d = c(0.1, 7.1, 7.6) or .d = c(0.1, 0.7, 7.6), if the maximum raw score is 8.

  • If length(.d) = 2, then the first element must refer to the assumption for raw score 0, and the second element for raw score k. For instance .d = c(0.1, 7.6), if the maximum raw score is 8.

Examples

Run this code
# NOT RUN {
data(data.FAO_country1)
# Questionnaire data and weights
XX.country1 = data.FAO_country1[,1:8]
wt.country1 = data.FAO_country1$wt
# Fit weighted Rasch
rr.country1 = RM.w(XX.country1, wt.country1)
# Fit unweighted Rasch
rr.country1.nw = RM.w(XX.country1)

# Item severity
rr.country1$b

# Item standard error
rr.country1$se.b

# Respondent severity for each raw score
rr.country1$a

# Respondent measurement error for each raw score
rr.country1$se.a

# Item infit  
rr.country1$infit

# Item outfit 
rr.country1$outfit

# Rasch reliability based on observed distribution of cases across raw scores
rr.country1$reliab

# Rasch reliability  based on equal proportion of cases in each 
# non-extreme raw score (more comparable across datasets)
rr.country1$reliab.fl

# Checking conditional independence: residual correlation matrix 
rr.country1$res.cor

# }

Run the code above in your browser using DataLab