Learn R Programming

umx (version 1.4.0)

umxCP: umxCP

Description

Make a 2-group Common Pathway twin model (Common-factor common-pathway multivariate model).

Usage

umxCP(name = "CP", selDVs, dzData, mzData, suffix = NULL, nFac = 1, freeLowerA = FALSE, freeLowerC = FALSE, freeLowerE = FALSE, correlatedA = FALSE, equateMeans = T, dzAr = 0.5, dzCr = 1, addStd = T, addCI = T, numObsDZ = NULL, numObsMZ = NULL, autoRun = getOption("umx_auto_run"))

Arguments

name
The name of the model (defaults to "CP")
selDVs
The variables to include
dzData
The DZ dataframe
mzData
The MZ dataframe
suffix
The suffix for twin 1 and twin 2, often "_T". If set, you can omit suffixes in SelDVs, i.e., just "dep" not c("dep_T1", "dep_T2")
nFac
How many common factors (default = 1)
freeLowerA
Whether to leave the lower triangle of A free (default = F)
freeLowerC
Whether to leave the lower triangle of C free (default = F)
freeLowerE
Whether to leave the lower triangle of E free (default = F)
correlatedA
?? (default = FALSE)
equateMeans
Whether to equate the means across twins (defaults to T)
dzAr
The DZ genetic correlation (defaults to .5, vary to examine assortative mating)
dzCr
The DZ "C" correlation (defaults to 1: set to .25 to make an ADE model)
addStd
Whether to add the algebras to compute a std model (defaults to TRUE)
addCI
Whether to add the interval requests for CIs (defaults to TRUE)
numObsDZ
= not yet implemented: Ordinal Number of DZ twins: Set this if you input covariance data
numObsMZ
= not yet implemented: Ordinal Number of MZ twins: Set this if you input covariance data
autoRun
Whether to mxRun the model (default TRUE: the estimated model will be returned)

Value

- mxModel

Details

The common-pathway model provides a powerful tool for theory-based decomposition of genetic and environmental differences.

umxCP supports this with pairs of mono-zygotic (MZ) and di-zygotic (DZ) twins reared together to model the genetic and environmental structure of multiple phenotypes (measured behaviors).

Like the umxACE model, the CP model decomposes phenotypic variance into Additive genetic, unique environmental (E) and, optionally, either common or shared-environment (C) or non-additive genetic effects (D).

Unlike the Cholesky, these factors do not act directly on the phenotype. Instead latent A, C, and E influences impact on one or more latent factors which in turn account for variance in the phenotypes (see Figure below).

Common-pathway path diagram:

CP.png

As can be seen, each phenotype also by default has A, C, and E influences specific to that phenotye.

Data Input Currently, the umxCP function accepts only raw data. This may change in future versions.

Ordinal Data In an important capability, the model transparently handles ordinal (binary or multi-level ordered factor data) inputs, and can handle mixtures of continuous, binary, and ordinal data in any combination.

Additional features The umxCP function supports varying the DZ genetic association (defaulting to .5) to allow exploring assortative mating effects, as well as varying the DZ “C” factor from 1 (the default for modelling family-level effects shared 100 to .25 to model dominance effects.

References

- http://www.github.com/tbates/umx

See Also

- plot(), umxSummary() work for IP, CP, GxE, SAT, and ACE models.

Other Twin Modeling Functions: plot.MxModel, umxACESexLim, umxACEcov, umxACE, umxCF_SexLim, umxGxE_window, umxGxE, umxIP, umxPlotACEcov, umxPlotCP, umxPlotGxE, umxPlotIP, umxSummaryACEcov, umxSummaryACE, umxSummaryCP, umxSummaryGxE, umxSummaryIP, umx_make_TwinData, umx

Examples

Run this code
require(umx)
data(twinData) 
zygList = c("MZFF", "MZMM", "DZFF", "DZMM", "DZOS")
twinData$ZYG = factor(twinData$zyg, levels = 1:5, labels = zygList)
selDVs = c("ht", "wt")
mzData <- subset(twinData, ZYG == "MZFF", umx_paste_names(selDVs, "", 1:2))
dzData <- subset(twinData, ZYG == "DZFF", umx_paste_names(selDVs, "", 1:2))
m1 = umxCP(selDVs = selDVs, dzData = dzData, mzData = mzData, suffix = "")
umxSummary(m1)
umxGetParameters(m1, "^c", free = TRUE)
m2 = umxModify(m1, update = "(cs_.*$)|(c_cp_)", regex = TRUE, name = "dropC")
umxSummaryCP(m2, comparison = m1, file = NA)
umxCompare(m1, m2)

Run the code above in your browser using DataLab