This function fits a continuous Item Response Theory (IRT) model to the algorithm performance data. The function EstCRMitem in the R package EstCRM is updated to accommodate negative discrimination.

cirtmodel(df, scale = FALSE, scale.method = NULL, max.item = 1, min.item = 0)

Arguments

df

The performance data in a matrix or dataframe with good performances having high values and poor performances having low values.

scale

If TRUE, the performance data is scaled to 0-1. The default is FALSE.

scale.method

The method to scale the data. The default is NULL. If set to "single", it scales the data to 0-1 for the full dataset. If set to "multiple" it scales each column/algorithm separately to 0-1. If scale is FALSE, the data is not scaled.

max.item

A vector with the maximum performance value for each algorithm. This can be used to inform the maximum performance value for each algorithm. Only will be used if scale is FALSE. Default is 1.

min.item

A vector with the minimum performance value for each algorithm. This can be used to inform the minimum performance value for each algorithm. Only will be used if scale is FALSE. Default is 0.

Value

A list with the following components:

model

The IRT model.

anomalous

A binary value for each algorithm. It is set to 1 if an algorithm is anomalous. Otherwise it is set to 0.

consistency

The consistency of each algorithm.

difficulty_limit

The difficulty limit of each algorithm. A higher difficulty limit indicates that the algorithm can tackle harder problems.

References

Zopluoglu C (2022). EstCRM: Calibrating Parameters for the Samejima's Continuous IRT Model. R package version 1.6, https://CRAN.R-project.org/package=EstCRM.

Examples

set.seed(1)
x1 <- runif(100)
x2 <- runif(100)
x3 <- runif(100)
X <- cbind.data.frame(x1, x2, x3)
mod <- cirtmodel(X)
#> Warning: NaNs produced
#> Warning: NaNs produced