Learn R Programming

umx (version 1.9.1)

umxCP: umxCP: Build and run a Common pathway twin model

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"), optimizer = NULL, sep = NULL)

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)

optimizer

optionally set the optimizer (default NULL does nothing)

sep

allowed as a synonym for "suffix"

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).

Common-pathway path diagram:

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

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).

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 modeling family-level effects shared 100 to .25 to model dominance effects.

References

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

See Also

- umxACE() for more examples of twin modeling, plot(), umxSummary() work for IP, CP, GxE, SAT, and ACE models.

Other Twin Modeling Functions: plot.MxModel, umxACESexLim, umxACE_cov_fixed, umxACEcov, umxACEv, umxACE, umxCF_SexLim, umxGxE_window, umxGxE, umxIP, umxPlotACEcov, umxPlotCP, umxPlotGxE, umxPlotIP, umxReduceACE, umxSummaryACEcov, umxSummaryACEv, umxSummaryACE, umxSummaryCP, umxSummaryGxE, umxSummaryIP, umx_long2wide, umx_wide2long, umx, xmu_twin_check

Examples

Run this code
# NOT RUN {
require(umx)
data(twinData) 
twinData$wt1 = twinData$wt1/10 # help CSOLNP by putting wt on a similar scale to ht
twinData$wt2 = twinData$wt2/10 # help CSOLNP by putting wt on a similar scale to ht
selDVs = c("ht", "wt")
mzData <- subset(twinData, zygosity == "MZFF")
dzData <- subset(twinData, zygosity == "DZFF")
umx_set_optimizer("SLSQP") # preferably NPSOL: CSOLNP needs setup to run this model.
m1 = umxCP(selDVs = selDVs, dzData = dzData, mzData = mzData, suffix = "")
umxSummary(m1)
umxParameters(m1, patt = "^c")
m2 = umxModify(m1, regex = "(cs_.*$)|(c_cp_)", name = "dropC")
umxSummaryCP(m2, comparison = m1, file = NA)
umxCompare(m1, m2)
# }

Run the code above in your browser using DataLab