ecm.mix: ECM Algorithm for Restricted General Location Model In mix: Estimation/Multiple Imputation for Mixed Categorical and Continuous Data

Description

Computes maximum-likelihood estimates for the parameters of the general location model from an incomplete mixed dataset.

Usage

 ```1 2``` ```ecm.mix(s, margins, design, start, prior=1, maxits=1000, showits=TRUE, eps=0.0001) ```

Arguments

 `s` summary list of an incomplete data matrix `x` produced by the function `prelim.mix`. `margins` vector describing the sufficient configurations or margins in the desired loglinear model. The variables are ordered in the original order of the columns of `x`, so that 1 refers to `x[,1]`, 2 refers to `x[,2]`, and so on. A margin is described by the factors not summed over, and margins are separated by zeros. Thus c(1,2,0,2,3,0,1,3) would indicate the (1,2), (2,3), and (1,3) margins in a three-way table, i.e., the model of no three-way association. `design` design matrix specifying the relationship of the continuous variables to the categorical ones. The dimension is `c(D,r)` where D is the number of cells in the contingency table, and r is the number of effects which must be less than or equal to D. The order of the rows corresponds to the storage order of the cell probabilities in the contingency table; see `getparam.mix` for details. `start` optional starting value of the parameter. This is a list such as one created by this function or by `dabipf.mix`. If structural zeros appear in the table, `start\$pi` should contain zeros in those positions and ones elsewhere. If no starting value is supplied, `ecm.mix` chooses its own appropriate starting value. `prior` Optional vector or array of hyperparameter(s) for a Dirichlet prior distribution. By default, uses a uniform prior on the cell probabilities. ECM finds the posterior mode, which under a uniform prior is the same as a maximum-likelihood estimate. If structural zeros appear in the table, hyperparameters for those cells should be set to `NA`.. `maxits` maximum number of iterations performed. The algorithm will stop if the parameter still has not converged after this many iterations. `showits` if `TRUE`, reports the iterations of ECM so the user can monitor the progress of the algorithm. `eps` optional convergence criterion. The algorithm stops when the maximum relative difference in every parameter from one iteration to the next is less than or equal to this value.

Value

a list representing the maximum-likelihood estimates (or posterior mode) of the normal parameters. This list contains cell probabilities, cell means, and covariances. The parameter can be transformed back to the original scale and put into a more understandable format by the function `getparam.mix`.

Note

If zero cell counts occur in the complete-data table, the maximum likelihood estimate may not be unique, and the algorithm may converge to different stationary values depending on the starting value. Also, if zero cell counts occur in the complete-data table, the ML estimate may lie on the boundary of the parameter space.

References

Schafer, J. L. (1996) Analysis of Incomplete Multivariate Data. Chapman \& Hall, Chapter 9.

`prelim.mix`, `em.mix`, `getparam.mix`, `loglik.mix`.

Examples

 ```1 2 3 4 5 6``` ```data(stlouis) s <- prelim.mix(stlouis,3) # preliminary manipulations margins <- c(1,2,3) # saturated loglinear model design <- diag(rep(1,12)) # identity matrix, D=no of cells thetahat <- ecm.mix(s,margins,design) # should be same as em.mix(s) loglik.mix(s,thetahat) # loglikelihood at thetahat ```

Example output

```Steps of ECM:
1...2...3...4...5...6...7...8...9...10...11...12...13...14...15...16...17...18...19...20...21...22...23...24...25...26...27...28...29...30...31...32...33...34...35...36...37...38...39...40...41...42...43...44...45...46...47...48...49...50...51...52...53...54...55...56...57...58...59...60...61...62...63...64...65...66...67...68...69...70...71...72...73...74...75...76...77...78...79...80...81...82...83...84...85...86...87...88...89...90...91...92...93...94...95...96...97...98...99...100...101...102...103...104...105...106...107...108...109...110...111...112...113...114...115...116...117...118...119...120...121...122...123...124...125...126...127...128...129...130...131...132...133...134...135...136...137...138...139...140...141...142...143...144...145...146...147...148...149...150...151...152...153...154...155...156...157...158...159...160...161...162...163...164...165...166...167...168...169...170...171...172...173...174...175...176...177...178...179...180...181...
[1] -110.3436
```

mix documentation built on June 20, 2017, 9:13 a.m.