Pseudo Variance Modification of Rubin's Rule
The pseudo-variance modification proposed by Heinze, Ploner and Beyea (2013) provides a quick way to adapt Rubin's rules to situations of a non-normal distribution of a regression coefficient. However, the approxiation is less accurate than that of the CLIP method.
PVR.confint(obj, variable, skewbeta = FALSE)
obj |
A fitted |
variable |
The variable(s) to compute the PVR confidence intervals, either provided as names or as numbers |
skewbeta |
If |
The pseudo-variance modification computes a lower and an upper pseudo-variance, which are based on the distance between profile likelihood limits and the parameter estimates. These are then plugged into the usual Rubin's rules method of variance combination
An object of class PVR.confint
with items:
estimate |
the pooled parameter estimate(s) (the average across completed-data estimates) |
ci |
the confidence intervals based on the PVR method |
lower.var |
the lower pseudo-variance(s) |
upper.var |
the upper pseudo-variance(s) |
conflev |
the confidence level: this is determined by the confidence level (1-alpha) used in the input fit objects |
call |
the function call |
variable |
the variable(s) for which confidence intervals were computed |
Georg Heinze
Heinze G, Ploner M, Beyea J (2013). Confidence intervals after multiple imputation: combining profile likelihood information from logistic regressions. Statistics in Medicine, to appear.
#generate data set with NAs freq=c(5,2,2,7,5,4) y<-c(rep(1,freq[1]+freq[2]), rep(0,freq[3]+freq[4]), rep(1,freq[5]), rep(0,freq[6])) x<-c(rep(1,freq[1]), rep(0,freq[2]), rep(1,freq[3]), rep(0,freq[4]), rep(NA,freq[5]), rep(NA,freq[6])) toy<-data.frame(x=x,y=y) # impute data set 5 times set.seed(169) toymi<-list(0) for(i in 1:5){ toymi[[i]]<-toy y1<-toymi[[i]]$y==1 & is.na(toymi[[i]]$x) y0<-toymi[[i]]$y==0 & is.na(toymi[[i]]$x) xnew1<-rbinom(sum(y1),1,freq[1]/(freq[1]+freq[2])) xnew0<-rbinom(sum(y0),1,freq[3]/(freq[3]+freq[4])) toymi[[i]]$x[y1==TRUE]<-xnew1 toymi[[i]]$x[y0==TRUE]<-xnew0 } # logistf analyses of each imputed data set fit.list<-lapply(1:5, function(X) logistf(data=toymi[[X]], y~x, pl=TRUE, dataout=TRUE)) # CLIP confidence limits PVR.confint(obj=fit.list)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.