R/generic.R

Defines functions vcov.emaxsim vcov.fitEmax sigma.emaxsimB sigma.fitEmaxB sigma.emaxsim sigma.fitEmax coef.emaxsimB coef.fitEmaxB coef.emaxsim coef.fitEmax

Documented in coef.emaxsim coef.emaxsimB coef.fitEmax coef.fitEmaxB sigma.emaxsim sigma.emaxsimB sigma.fitEmax sigma.fitEmaxB vcov.emaxsim vcov.fitEmax

coef.fitEmax<-function(object, ...){
	return(object$fit$estimate)
}

####
coef.emaxsim<-function(object, ...){
	fitType<-object$fitType
	est<-object$est4
	colnames(est)<-NULL
	t3<- fitType=='3'
	est[t3,1:3]<-object$est3[t3,]
	ta<- (!t3) & (!(fitType=='4'))
	est[ta,1:2]<-object$estA[ta,]
	
	return(list(fitType=fitType, est=est))
}

####
coef.fitEmaxB<-function(object, local=FALSE, ...){
	binary<-object$binary
	matm<-as.matrix(object$estanfit)	
	localParm<-object$localParm
	modType<-object$modType
	dimFit<-object$dimFit
	if(is.null(localParm))localParm<-FALSE
	if(local & !localParm)stop('local=TRUE but no local parameters fit')
	
	if(local){
		nc<-1
		matm<-matm[,'difTarget',drop=FALSE]
	}else{
		if(localParm){ 
			if(modType==3){
				offb<-2
				offc<-3
			}else{
				offb<-3
				offc<-4
			}
			if(binary || dimFit)nc<-ncol(matm)-offb else nc<-ncol(matm)-offc
		}else  if(binary)nc<-ncol(matm)-1 else nc<-ncol(matm)-2
	}
	
	return(matm[,1:nc,drop=FALSE])
}

####
coef.emaxsimB<-function(object, local=FALSE, ...){
	localParm<-object$localParm
	if(is.null(localParm))localParm<-FALSE
	if(local & !localParm)stop('local=TRUE but no local parameters fit')
	
	est<-object$est
	nc<-ncol(est)
	if((localParm) && local){
		est<-est[,nc,drop=FALSE]
	}else if(localParm)est<-est[,1:(nc-1)]
	
	return(est)
}

####
sigma.fitEmax<-function(object, ...){
	if(object$binary){
		warning("sigma returns NA for binary endpoint")
		return(NA)
	}else return(object$residSD)
}

####
sigma.emaxsim<-function(object, ...){
	if(object$binary){
		warning("sigma returns NA for binary endpoint")
		return(NA)
	}else return(object$residSD)
}

####

sigma.fitEmaxB<-function(object, ...){
	if(object$dimFit){
		warning("sigma returns NA when fitted model results are input to fitEmaxB")
		return(NA)		
	}else if(object$binary){
		warning("sigma returns NA for binary endpoint")
		return(NA)
	}else{
		matm<-as.matrix(object$estanfit)	
		return(as.vector(matm[,'sigma[1]']))
	}
}
#####
sigma.emaxsimB<-function(object, ...){
	if(object$binary){
		warning("sigma returns NA for binary endpoint")
		return(NA)
	}else return(object$residSD)
}

####
vcov.fitEmax<-function(object, ...){
	return(object$fit$vc)
}

####
vcov.emaxsim<-function(object, ...){
	return(object$vc)
}

Try the clinDR package in your browser

Any scripts or data that you put into this service are public.

clinDR documentation built on Aug. 9, 2023, 9:08 a.m.