Description Usage Arguments Details Value Author(s) See Also Examples
Maximum likelihood estimation of item response theory (IRT) models for binary and polytomous data
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | flirt(data, select=NULL, subset=NULL, loading=list(on=FALSE, inside=FALSE),
mul=list(on=FALSE, dim_info=NULL, cov_info=NULL),
bifac=list(on=FALSE, dim_info=NULL, cov_info=NULL),
second=list(on=FALSE, dim_info=NULL, cov_info=NULL),
guess=list(on=FALSE),
person_cov=list(on=FALSE, person_matrix=NULL, main=NULL),
item_cov=list(on=FALSE, item_matrix_beta=NULL, item_matrix_alpha=NULL),
dif=list(on=FALSE, dif_beta=NULL, dif_alpha=NULL),
mg=list(on=FALSE, group_matrix=NULL), mixture =list(on=FALSE, num=NULL),
weight=list(on=FALSE, weight_matrix=NULL), post=FALSE,
start = list(on=FALSE, npar=NULL, start_info=NULL, start_value=NULL),
constraint = list(on=FALSE, npar=NULL, cons_info=NULL, cons_value=NULL),
evaluate = list(on=FALSE, eval_value=NULL),
control=list(minpercent= NULL, max_it=NULL, nq=NULL, conv=NULL,
link=NULL, adapt=NULL, se_num=NULL, se_emp=NULL, alp_bounds_up=NULL,
verbose=NULL, show=NULL) )
|
data |
matrix or data.frame in wide form - persons in rows and items in columns. Group membership, person covariates and sampling weights may be included as additional columns |
select |
vector of item numbers or item names. If data include other than item responses or the user wants to analyze only subset of items,
|
subset |
vector of names or numbers of cases (rows) of choice. |
loading |
list.
|
mul |
list.
|
bifac |
list.
|
second |
list.
|
guess |
list.
|
person_cov |
list.
|
item_cov |
list.
|
dif |
list.
|
mg |
list.
|
mixture |
list.
|
weight |
list.
|
post |
logical. if |
start |
|
constraint |
|
evaluate |
|
control |
list of control options with components:
|
Parameterization: For a linear predictor flirt
uses θ_p + β_i for 1PL models,
α_i(θ_p + β_i) or α_i θ_p + β_i for 2PL models,
and α_{ig} θ_{pg} +α_{is} θ_{ps} + β_i for bifactor and second-order models,
where θ_p is the ability of a person p,
β_i is the item easiness (or intercept),
α_i is the loading (or slope), and θ_{pg} and θ_{ps} are abilities for the general
g and specific dimension s with
α_{ig} and α_{is}, respectively.
For 3PL models, the guessing parameter c_i is incorporated in the probability,
P_i = c_i + \frac{(1-c_i)}{1+ exp(-(α_i θ_p + β_i))}.
For second-order models, α_{ig}/ α_{is} is
the second-order loading for the sth first-order factor on the second-order factor θ_{pg},
which is constant for the items within sth first-order factor.
Polytomous item responses: Minimum category should be 0.
Multiple group analysis: Group membership should start from 0.
Standard errors: For variance-covariance parameters, standard errors are not provided and NA is returned. For parameters that are constrained, standard errors are not calculated and NA is returned.
Starting values, evaluation: Parameter values (to be fixed at) for variance-covariance parameters should be Cholesky elements of lower triangular matrix L (Cov = LL' )
Boundary values: The maximum boundary values for parameters are set to
\pm 15. The upper and lower boundary values for α_i can be modified using
the control options alp_bounds_up
and alp_bounds_low
.
If a parameter estimate crosses the boundary value during iterations,
the parameter estimate is automatically restricted to the boundary value and no parameter and standard error
estimates are provided with a warning message.
Missing values: Missing values should be specified as NA. Missing values in item responses and item design matrices are treated as ignorable, but for missing values in person design, person group, and weight matrices, listwise deletion is used.
An object of class flirt
, with the following slots that can be extracted using object@
pars |
matrix of parameters estimates and standard errors |
parms |
original parameter estimates from BNLflirt (including cholesky estimates for multidimensional models) |
info_num |
information matrix (numerical) evaluated at the maximum likelihood estimates |
se_emp |
standard errors using empirical information matrix (if used) |
info_emp |
information matrix (empirical) evaluated at the maximum likelihood estimates (if used) |
loglik |
log-likelihood value at convergence |
AIC |
Akaike information criterion: -2*loglik+2*npar, where npar is number of parameters |
BIC |
Bayesian information criterion: -2*loglik+npar*log(nobs), where nobs is number of cases (persons) |
npar |
number of parameters |
post |
post analysis with a list of
|
data_inf |
data information with a list of
|
dim_inf |
dimension information with a list of
|
inside |
inside:1, otherwise:0 (2PL parameterization) |
model |
1:unidimensional 1PL model family, 2:unidimensional 2PL model family, 3: multidimensional 1PL model family, 4: multidimensional 2PL model family, 5: bifactor model family |
dif_beta |
items that are under investigation for DIF for β_i |
dif_alpha |
items that are under investigation for DIF for α_i |
est_inf |
estimation information with a list of
|
Minjeong Jeon <jeon.117@osu.edu>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | # set directory where the .tar is located.
install.packages("flirt", type="source", repos=NULL)
library(flirt)
# show built-in datasets
data(package="flirt")
# with adjacent link function (partial credit model)
result1 <- flirt(data=charity, subset=1:100,
control=list(minpercent=0.05, nq=5, link="adjacent", show=TRUE))
## verbal aggression data
data(verb2)
# 2-dimensional 2PL model for binary data
# with a(th+b) parameterization
result2 <- flirt(data=verb2, select=2:25,
mul=list(on=TRUE, dim_info=list(dim1=1:12, dim2=13:24)) )
# output
result2
summary(result2)
coef(result2)
logLik(result2)
# 1PL graded response model for polytomous responses
# with cumulative link function (graded response model)
data(charity)
result3 <- flirt(data=charity, subset=1:100,
control=list(minpercent=0.05, nq=5, link="cumulative", show=TRUE))
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.