View source: R/02_InterItemAnalysis.R
InterItemAnalysis | R Documentation |
Calculates various relationship metrics between pairs of items in test data. This analysis helps identify item interdependencies, content overlaps, and potential local dependence. For binary data, metrics include joint response rates, conditional probabilities, and several correlation measures. For ordinal/rated data, appropriate correlation measures are calculated.
The following metrics are calculated for binary data:
JSS: Joint Sample Size - number of examinees responding to both items
JCRR: Joint Correct Response Rate - proportion of examinees answering both items correctly
CCRR: Conditional Correct Response Rate - probability of answering one item correctly given a correct response to another item
IL: Item Lift - ratio of joint correct response rate to the product of marginal rates
MI: Mutual Information - measure of mutual dependence between items
Phi: Phi Coefficient - correlation coefficient for binary variables
Tetrachoric: Tetrachoric Correlation - estimate of Pearson correlation for underlying continuous variables
For ordinal/rated data, the function calculates:
JSS: Joint Sample Size
JSR: Joint Selection Rate
CSR: Conditional Selection Rate
MI: Mutual Information
Polychoric: Polychoric Correlation - extension of tetrachoric correlation for ordinal data
InterItemAnalysis(U, na = NULL, Z = NULL, w = NULL)
U |
Either an object of class "exametrika" or raw data. When raw data is given,
it is converted to the exametrika class with the |
na |
Values to be treated as missing values. |
Z |
Missing indicator matrix of type matrix or data.frame. Values of 1 indicate observed responses, while 0 indicates missing data. |
w |
Item weight vector specifying the relative importance of each item. |
This function automatically detects the data type and applies appropriate analysis methods:
For binary data: Calculates tetrachoric correlations and related statistics
For ordinal/rated data: Calculates polychoric correlations and related statistics
For nominal data: Returns an error (not supported)
Inter-item analysis is useful for:
Identifying groups of highly related items
Detecting local dependence between items
Evaluating test dimensionality
Informing item selection and test construction
For binary data, an object of class "exametrika" and "IIAnalysis" containing:
Joint Sample Size matrix - N(i,j) shows number of examinees who responded to both items i and j
Joint Correct Response Rate matrix - P(Xi=1, Xj=1) shows probability of correct responses to both items
Conditional Correct Response Rate matrix - P(Xi=1|Xj=1) shows probability of correct response to item i given correct response to item j
Item Lift matrix - P(Xi=1, Xj=1)/(P(Xi=1)*P(Xj=1)) measures association strength
Mutual Information matrix - measures information shared between items
Phi Coefficient matrix - correlation coefficient between binary variables
Tetrachoric Correlation matrix - correlation between underlying continuous variables
For ordinal/rated data, an object of class "exametrika" and "IIAnalysis.ordinal" containing:
Joint Sample Size matrix
Joint Selection Rate matrix - frequencies of joint category selections
Conditional Selection Rate matrix - probabilities of response categories conditional on other items
Mutual Information matrix
Polychoric Correlation matrix - correlations between underlying continuous variables
dataFormat
for data preparation, CTT
for
Classical Test Theory analysis
# Basic usage with binary data
ii_analysis <- InterItemAnalysis(J15S500)
# View joint sample sizes
head(ii_analysis$JSS)
# View tetrachoric correlations
head(ii_analysis$Tetrachoric)
# Find pairs of items with high mutual information (potential local dependence)
high_MI <- which(ii_analysis$MI > 0.2 & upper.tri(ii_analysis$MI), arr.ind = TRUE)
if (nrow(high_MI) > 0) {
print("Item pairs with high mutual information:")
print(high_MI)
}
# Example with ordinal data
ordinal_analysis <- InterItemAnalysis(J15S3810)
# View polychoric correlations for ordinal data
head(ordinal_analysis$Polychoric)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.