Added DIF scenarios up to 16
This commit is contained in:
@ -19,7 +19,6 @@ lastChar <- function(str){
|
||||
############################# ANALYSIS FUNCTIONS #############################
|
||||
#----------------------------------------------------------------------------#
|
||||
##############################################################################
|
||||
|
||||
pcm_analysis <- function(df=NULL,treatment='TT',irtmodel='PCM2',method='MML') {
|
||||
nbitems <- sum(sapply(1:20,function(x) paste0('item',x)) %in% colnames(df))
|
||||
resp <- df[,sapply(seq(1,nbitems),function(x) paste0('item',x))]
|
||||
@ -43,19 +42,19 @@ replicate_pcm_analysis_m4 <- function(df=NULL,treatment='TT',irtmodel='PCM2',met
|
||||
if (method=='MML') {
|
||||
n <- max(df[,sequence])
|
||||
print(n)
|
||||
tam1 <- pbmclapply(seq(1,n),
|
||||
tam1 <- lapply(seq(1,n),
|
||||
function(x) pcm_analysis(df=df[df[,sequence]==x,],treatment=treatment,irtmodel=irtmodel)
|
||||
)
|
||||
)
|
||||
}
|
||||
listitems <- c(sapply(c('_1','_2','_3'),function(x) paste0(sapply(seq(1,nbitems),function(x) paste0('item',x)),x)))
|
||||
returndat <- data.frame(matrix(nrow=max(df[,sequence]),ncol=length(listitems)))
|
||||
colnames(returndat) <- listitems
|
||||
for (s in seq(1,max(df[,sequence]))) {
|
||||
for (k in seq(1,nbitems)) {
|
||||
returndat[s,paste0('item',k,'_1')] <- tam1[[s]]$item[k,'AXsi_.Cat1']
|
||||
returndat[s,paste0('item',k,'_2')] <- tam1[[s]]$item[k,'AXsi_.Cat2']-tam1[[s]]$item[k,'AXsi_.Cat1']
|
||||
returndat[s,paste0('item',k,'_3')] <- tam1[[s]]$item[k,'AXsi_.Cat3']-tam1[[s]]$item[k,'AXsi_.Cat2']
|
||||
}
|
||||
for (k in seq(1,nbitems)) {
|
||||
returndat[s,paste0('item',k,'_1')] <- tam1[[s]]$item[k,'AXsi_.Cat1']
|
||||
returndat[s,paste0('item',k,'_2')] <- tam1[[s]]$item[k,'AXsi_.Cat2']-tam1[[s]]$item[k,'AXsi_.Cat1']
|
||||
returndat[s,paste0('item',k,'_3')] <- tam1[[s]]$item[k,'AXsi_.Cat3']-tam1[[s]]$item[k,'AXsi_.Cat2']
|
||||
}
|
||||
}
|
||||
returndat <- returndat[,sort_by(listitems, lastChar)]
|
||||
returndat$beta <- sapply(seq(1,max(df[,sequence])),function(k) tam1[[k]]$beta[2])
|
||||
@ -91,8 +90,8 @@ replicate_pcm_analysis_m2 <- function(df=NULL,treatment='TT',irtmodel='PCM2',met
|
||||
if (method=='MML') {
|
||||
n <- max(df[,sequence])
|
||||
print(n)
|
||||
tam1 <- pbmclapply(seq(1,n),
|
||||
function(x) pcm_analysis(df=df[df[,sequence]==x,],treatment=treatment,irtmodel=irtmodel)
|
||||
tam1 <- lapply(seq(1,n),
|
||||
function(x) pcm_analysis(df=df[df[,sequence]==x,],treatment=treatment,irtmodel=irtmodel)
|
||||
)
|
||||
}
|
||||
listitems <- sapply(seq(1,nbitems),function(x) paste0('item',x))
|
||||
@ -126,12 +125,12 @@ replicate_pcm_analysis_m2 <- function(df=NULL,treatment='TT',irtmodel='PCM2',met
|
||||
}
|
||||
|
||||
|
||||
replicate_pcm_analysis<- function(df=NULL,treatment='TT',irtmodel='PCM2',method='MML',sequence='replication',truebeta=0,eff.size=0,difsize=NA,nbdif=0) {
|
||||
replicate_pcm_analysis<- function(df=NULL,treatment='TT',irtmodel='PCM2',method='MML',sequence='replication',eff.size=0,difsize=NA,nbdif=0) {
|
||||
j <- max(df$item1)
|
||||
if(j==1) {
|
||||
return(replicate_pcm_analysis_m2(df=NULL,treatment='TT',irtmodel='PCM2',method='MML',sequence='replication',truebeta=0,eff.size=0,difsize=NA,nbdif=0))
|
||||
return(replicate_pcm_analysis_m2(df=df,treatment=treatment,irtmodel=irtmodel,method=method,sequence=sequence,eff.size=eff.size,difsize=difsize,nbdif=nbdif))
|
||||
} else {
|
||||
return(replicate_pcm_analysis_m4(df=NULL,treatment='TT',irtmodel='PCM2',method='MML',sequence='replication',truebeta=0,eff.size=0,difsize=NA,nbdif=0))
|
||||
return(replicate_pcm_analysis_m4(df=df,treatment=treatment,irtmodel=irtmodel,method=method,sequence=sequence,eff.size=eff.size,difsize=difsize,nbdif=nbdif))
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user