Hello Phil,
I have discussed this issue in brief on google group. I dug further for more criteria and I found there are many other criteria combination which are problematic and possible bugs, so I took the liberty of posting the issue here.
Here are the different combinations:
data(LSAT7)
dat=expand.table(LSAT7)
mod <- mirt(dat,1)
- start_item = "MLWI" criteria = 'MI', "MLWI", 'MEI', 'MEPV' and 'MPWI'
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MLWI', criteria = 'MI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MLWI', criteria = 'MLWI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MLWI', criteria = 'MEI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MLWI', criteria = 'MEPV',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MLWI', criteria = 'MPWI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
- start_item = "MEPV" criteria = 'MI', "MLWI", 'MEI', 'MEPV' and 'MPWI'
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MEPV', criteria = 'MI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in is(object, "DiscreteClass") :
trying to get slot "mo" from an object of a basic class ("NULL") with no slots
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MEPV', criteria = 'MLWI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in is(object, "DiscreteClass") :
trying to get slot "mo" from an object of a basic class ("NULL") with no slots
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MEPV', criteria = 'MEPV',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in is(object, "DiscreteClass") :
trying to get slot "mo" from an object of a basic class ("NULL") with no slots
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MEPV', criteria = 'MEI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in is(object, "DiscreteClass") :
trying to get slot "mo" from an object of a basic class ("NULL") with no slots
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MEPV', criteria = 'MPWI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in is(object, "DiscreteClass") :
trying to get slot "mo" from an object of a basic class ("NULL") with no slots
- start_item = "MPWI" criteria = 'MI', "MLWI", 'MEI', 'MEPV' and 'MPWI'
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MPWI', criteria = 'MI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MPWI', criteria = 'MLWI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MPWI', criteria = 'MEI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MPWI', criteria = 'MEPV',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MPWI', criteria = 'MPWI',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
Error in rowSums(ll[, tmp]) :
'x' must be an array of at least two dimensions
- start_item = "MEI" criteria = 'MEPV'
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MEI', criteria = 'MEPV',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
findNextItem(CATdesign)
[1] 2
CATdesign <- updateDesign(CATdesign, items = c(2), responses = c(1), Theta = 0)
findNextItem(CATdesign)
Error in is(object, "DiscreteClass") :
trying to get slot "mo" from an object of a basic class ("NULL") with no slots
- start_item = "MI" criteria = 'MEPV'
CATdesign <- mirtCAT(df=NULL, mod,start_item = 'MI', criteria = 'MEPV',method = "ML" ,design_elements = TRUE, local_pattern = c(1,1,1,1,1), Theta=0)
findNextItem(CATdesign)
[1] 3
CATdesign <- updateDesign(CATdesign, items = c(3), responses = c(1), Theta = 0)
findNextItem(CATdesign)
Error in is(object, "DiscreteClass") :
trying to get slot "mo" from an object of a basic class ("NULL") with no slots