write.flexmirt {irtQ} | R Documentation |
Write a "-prm.txt" File for flexMIRT
Description
This function writes a flexMIRT-compatible "-prm.txt" file (Cai,
2017). It currently supports only unidimensional IRT models. This function
was developed by modifying read.flexmirt()
from Pritikin & Falk (2020).
Usage
write.flexmirt(
x,
file = NULL,
norm.pop = c(0, 1),
rePar = TRUE,
mgroup = FALSE,
group.name = NULL
)
Arguments
x |
A data frame of item metadata (e.g., item parameters, number of
categories, model types) for a single group, or a list of such data frames
for multiple groups. See |
file |
A character string specifying the destination file path (with a ".txt" extension). |
norm.pop |
A numeric vector of length two specifying the mean and
standard deviation of the normal population ability distribution for a
single group, or a list of such vectors for multiple groups. When a list is
provided, each internal vector must contain the mean and standard deviation
for a group's ability distribution (e.g., |
rePar |
A logical value indicating whether the item parameters are
reparameterized. If |
mgroup |
A logical value indicating whether the file includes multiple
groups. Default is |
group.name |
A character vector of group names. If |
Value
This function creates a flexMIRT-style "-prm.txt" file at the specified path.
Author(s)
Hwanggyu Lim hglim83@gmail.com
References
Cai, L. (2017). flexMIRT 3.5 Flexible multilevel multidimensional item analysis and test scoring (Computer Software). Chapel Hill, NC: Vector Psychometric Group.
Pritikin, J. N., & Falk, C. F. (2020). OpenMx: A modular research environment for item response theory method development. Applied Psychological Measurement, 44(7-8), 561-562.
Examples
## 1. Create a "-prm.txt" file for a single group
## using the simulated CAT data
# 1-(1) Extract the item metadata
x <- simCAT_MX$item.prm
# 1-(2) Set the name of the "-prm.txt" file
temp_prm <- file.path(tempdir(), "single_group_temp-prm.txt")
# 1-(3) Write the "-prm.txt" file
write.flexmirt(x, file = temp_prm, norm.pop = c(0, 1), rePar = FALSE)
## 2. Create a "-prm.txt" file for multiple groups
## using simulated multi-group data
# 2-(1) Extract the item metadata
x <- simMG$item.prm
# Set the name of the "-prm.txt" file
temp_prm <- file.path(tempdir(), "mg_group_temp-prm1.txt")
# Write the "-prm.txt" file
write.flexmirt(x,
file = temp_prm, norm.pop = list(c(0, 1), c(0.5, 0.8), c(-0.3, 1.3)),
rePar = FALSE, mgroup = TRUE, group.name = c("GR1", "GR2", "GR3")
)
# Or write the "-prm.txt" file so that
# all groups share the same ability distribution
# and group names are generated automatically
temp_prm <- file.path(tempdir(), "mg_group_temp-prm2.txt")
write.flexmirt(x,
file = temp_prm, norm.pop = c(0, 1),
rePar = FALSE, mgroup = TRUE, group.name = NULL
)