Class RubinsRules
java.lang.Object
edu.cmu.tetrad.data.missing.RubinsRules
Rubin's rules for pooling a scalar estimate across the m completed data sets of a multiple imputation. Each data
set gives an estimate and its standard error, computed as if that data set were fully observed; the pooled
estimate is their mean, and its variance adds to the average of the squared standard errors (the within-imputation
variance) the variance of the estimates across data sets (the between-imputation variance), inflated by 1 + 1/m.
The second term is the uncertainty due to the missing data, which no single completed data set shows.
Degrees of freedom follow Barnard and Rubin (1999), which keeps them below the complete-data degrees of freedom.
These rules are for imputations of one data set. They are not valid for data sets that are independent samples, different subjects, or different conditions. And if the imputations were made without drawing the imputation model's parameters (improper imputation, as Tetrad's imputers are), the between-imputation variance is understated, and so the pooled standard error is somewhat too small.
- Author:
- josephramsey
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionstatic RubinsRules.Pooledpool(double[] estimates, double[] standardErrors, double completeDataDf) Pools one parameter.
-
Method Details
-
pool
public static RubinsRules.Pooled pool(double[] estimates, double[] standardErrors, double completeDataDf) Pools one parameter.- Parameters:
estimates- the estimate from each completed data set; at least 2standardErrors- the standard error of each, in the same ordercompleteDataDf- the degrees of freedom the estimate would have with complete data (for instance, the sample size less the number of free parameters); positive, or NaN or infinite if unknown, in which case no small-sample adjustment is made- Returns:
- the pooled result
-