mxPearsonSelCov {OpenMx}R Documentation

Perform Pearson Aitken selection

Description

[Maturing] These functions implement the Pearson Aitken selection formulae.

Usage

mxPearsonSelCov(origCov, newCov)
mxPearsonSelMean(origCov, newCov, origMean)

Arguments

origCov

covariance matrix. The covariance prior to selection.

newCov

covariance matrix. A subset of origCov to replace.

origMean

column vector. A mean vector to adjust.

Details

Which dimensions to condition on can be communicated in one of two ways: (1) newCov is a submatrix of origCov. The dimnames are matched to determine which partition of origCov to replace with newCov. Or (2) newCov is the same dimension as origCov. The matrix entries are inspected to determine which entries have changed. The changed entries determine which partition of origCov to replace with newCov.

Let the n×nn \times n covariance matrix R (origCov) be partitioned into non-empty, disjoint sets p and q. Let RijR_{ij} denote the covariance matrix between the p and q variables where the subscripts denote the variable subsets (e.g. RpqR_{pq}). Let column vectors μp\mu_p and μq\mu_q contain the means of p and q variables, respectively. We wish to compute the conditional covariances of the variables in q for a subset of the population where RppR_{pp} and μp\mu_p are known (or partially known)—that is, we wish to condition the covariances and means of q on those of p. Let VppV_{pp} (newCov) be an arbitrary covariance matrix of the same dimension as RppR_{pp}. If we replace RppR_{pp} by VppV_{pp} then the mean of q (origMean) is transformed as

μqμq+RqpRpp1μp\mu_q \to \mu_q + R_{qp} R_{pp}^{-1} \mu_p

and the covariance of p and q are transformed as

[RppRpqRqpRqq][VppVppRpp1RpqRqpRpp1VppRqqRqp(Rpp1Rpp1VppRpp1)Rpq]\left[ \begin{array}{c|c} R_{pp} & R_{pq} \\ \hline R_{qp} & R_{qq} \end{array} \right] \to \left[ \begin{array}{c|c} V_{pp} & V_{pp}R_{pp}^{-1}R_{pq} \\ \hline R_{qp}R_{pp}^{-1}V_{pp} & R_{qq}-R_{qp} (R_{pp}^{-1} - R_{pp}^{-1} V_{pp} R_{pp}^{-1}) R_{pq} \end{array} \right]

References

Aitken, A. (1935). Note on selection from a multivariate normal population. Proceedings of the Edinburgh Mathematical Society (Series 2), 4(2), 106-110. doi:10.1017/S0013091500008063

Examples

library(OpenMx)

m1 <- mxModel(
  'selectionTest',
  mxMatrix('Full', 10, 10, values=rWishart(1, 20, toeplitz((10:1)/10))[,,1],
           dimnames=list(paste0('c',1:10),paste0('c',1:10)), name="m1"),
  mxMatrix('Full', 2, 2, values=diag(2),
           dimnames=list(paste0('c',1:2),paste0('c',1:2)), name="m2"),
  mxMatrix('Full', 10, 1, values=runif(10),
           dimnames=list(paste0('c',1:10),c('v')), name="u1"),
  mxAlgebra(mxPearsonSelCov(m1, m2), name="c1"),
  mxAlgebra(mxPearsonSelMean(m1, m2, u1), name="u2")
)

m1 <- mxRun(m1)

[Package OpenMx version 2.21.11 Index]