Dear R-List, I tried to fit a partial credit model using the "pcmdat" from eRm-package comparing the results of mirt, eRm, ltm and winsteps. The results where quite different, though. I cannot figure out what went wrong and I do not know which result I can rely on. This is what I did in R library(mirt) #load(file="u3.RData") mirt<-mirt(as.data.frame(pcmdat),1,itemtype="graded",constrain=list(1,5,9,13,17,21,25)) # I was assuming that a GRM with constrained discrimination parameter would equal a PCM cf<-as.data.frame(unlist(coef(mirt))) md1<-cf[c(2,6,10,14,18,22,26),] md2<-cf[c(3,7,11,15,19,23,27),] md3<-cf[c(4,8,12,16,20,24,NA),] mirt<-as.data.frame(cbind(md1,md2,md3)) mirt[7,3]<-0.5*rowSums(mirt[7,1:2])#to get the mean of md1+md2 when dividing by 3 to equal eRm results mirt$loc<-rowSums(mirt)/3 rownames(mirt)<-c("x1","x2","x3","x4","x5","x6","x7") mirt<-round(mirt[order(mirt$loc,decreasing=TRUE),],2) mirt #I get the following order of item parameters: x6,x5,x1,x4,x7,x3,x2 library(eRm) res<-PCM(pcmdat) pres<-person.parameter(res) thres<-thresholds(res) erm<-thres$threshtable erm<-as.data.frame(erm) names(erm)<-c("loc","thres1","thres2","thres3") rownames(erm)<-c("x1","x2","x3","x4","x5","x6","x7") erm<-round(erm[order(erm$loc,decreasing=TRUE),],2) erm<-erm[c(2:4,1)] erm #I get the following order of item parameters: x2,x3,x7,x1,x4,x5,x6 library(ltm) grm<-grm(as.data.frame(pcmdat),constrained=TRUE,IRT.param=TRUE) ltm<-as.data.frame(unlist(coef.grm(grm))) ld1<-ltm[c(1,5,9,13,17,21,25),] ld2<-ltm[c(2,6,10,14,18,22,26),] ld3<-ltm[c(3,7,11,15,19,23,NA),] ltm<-as.data.frame(cbind(ld1,ld2,ld3)) ltm[7,3]<-0.5*rowSums(ltm[7,1:2])#to get the mean of ld1+ld2 when dividing by 3 names(ltm)<-c("thres1","thres2","thres3") rownames(ltm)<-c("x1","x2","x3","x4","x5","x6","x7") ltm$loc<-rowSums(ltm)/3 ltm<-round(ltm[order(ltm$loc,decreasing=TRUE),],2) ltm #I get the following order of item parameters:x2,x3,x4,x7,x1,x5,x6 And this is what I got using winsteps. | | INFIT | OUTFIT | item| loc |MNSQ ZSTD|MNSQ ZSTD| ------|---------+----------+----------+ x7 | .49 | .62 -1.4|1.05 .3| x2 | .30 |1.02 .2|1.27 .9| x3 | .24 | 1.14 .6|1.05 .3| x4 | .00 | .88 -.4| .80 -.6| x1 | -.11 | .91 -.3| .88 -.3| x5 | -.28 | 1.16 .7|1.08 .4| x6 | -.63 | 1.17 .7|1.08 .4| Sorry if this is a silly question, but I would have thought that I could validate my results by comparing them to winsteps. How can I reproduce the results using any R-package? Thank you for any advice. All the best. Alain [[alternative HTML version deleted]]