# Dyadic mixed model analysis for pedigree data

### Description

Dyadic mixed model analysis with multi-trait responses and pedigree-based partitioning of an individual random effect into a range of genetic and environmental (co)variance components for individual (ie direct) and maternal contributions to phenotype.

### Details

Package: | dmm |

Type: | Package |

Version: | 1.7-1 |

Date: | 2016-01-08 |

License: | GPL-2 |

This package provides tools for setting up and solving dyadic model equations leading to estimates of variance components and their standard errors, for transforming variance components to genetic parameters and their standard errors, and for computing genetic response to selection.

You may wish to use this package if you are looking for any of the following features in a quantitative genetic analysis:

suited to small multi-trait datasets with pedigree information

individual, maternal, and cohort environmental component estimates and standard errors

individual and maternal additive, dominance, epistatic, and sex-linked genetic component estimates and standard errors

cross-effect and cross-trait covariance components

multicollinearities among the components

genetic parameters (ie proportion of variance and correlation) and standard errors for all fitted components

genetic response to phenotypic selection for individual additive and maternal additive cases with autosomal and sexlinked components

data preparation tools

S3 methods to organize output

test example datasets

alternative approach to iterative ML and REML estimation procedures

component estimates equivalent to MINQUE (after fixed effects by OLS) and bias-corrected-ML (after fixed effects by GLS)

multi-trait or traitspairwise or traitsblockwise analyses

The main functions in dmm are:

- dmm()
Sets up and solves dyadic model equations for a dataset which is supplied as a dataframe containing both the pedigree information and the observations

- mdf()
Checks the dataframe for compliance with dmm requirements, converts multi-trait data to a matrix within the dataframe, and optionally appends relationship matrices to the dataframe.

- summary()
S3 method, reports (co)variance components and standard errors

- gsummary()
S3 method, reports genetic parameters and standard errors

- gresponse()
S3 method, reports genetic response to selection

- print()
S3 method, briefly reports output object from dmm()

- plot()
S3 method, plots residuals for dyadic model fit

There are also some example datasets, some with 'known' answers:

- dt8bal.df
A small balanced dataset showing agreement with aov in balanced case

- harv103.df
A real dataset from Harvey(1960) with extensive fixed effects

- merino.df
A large real multi-trait dataset from a Merino sheep breeding experiment

- quercus.df
A 2-trait dataset supplied with the QUERCUS program

- sheep.df
A small 3-trait dataset used for demonstration

- tstmo1.df
A univariate dataset supplied with the DFREML program

- warcolak
We also use the warcolak dataset from package

`nadiv`

To use dmm one first must put the desired dataset into an R workspace as a dataframe object. The minimum requirement is for a dataframe with columns labelled :

- Id
Identifier for each individual

- SId
Identifier for the sire of each individual

- DId
Identifier for the dam of each individual

- Sex
Sex code for each individual

- Fixed factors
Codes for levels of each fixed factor

- Observations
Numeric values for each observation or trait

There are other requirements, and these are documented under the `mdf()`

help page, which also documents how to use `mdf()`

to convert the user's dataframe to an acceptable form, which can be either another dataframe or an object of class `mdf`

.

Given an acceptable data object, one simply calls function `dmm()`

with appropriate arguments, the first of which is the data object's name. There are `formula`

arguments to specify fixed effects and cohorts, and the components to be partitioned are specified in a simple vector of names. Arguments are documented under the `dmm()`

help page. An object of class `dmm`

is returned and should be saved in the R workspace.

Given a `dmm`

object, there are S3 methods to display the results as follows:

- print()
Reports fixed effect coefficient and (co)variance component estimates

- summary()
Reports fixed effect coefficient and (co)variance component estimates with standard errors and confidence limits

- gprint()
Reports genetic parameters (proportion of variance and correlation) for each component partitioned

- gsummary()
Reports genetic parameters with standard errors and confidence limits

- gresponse()
reports genetic response to selection, for estimated parameters

These functions are documented on their help pages.
Other results (eg plots) may be obtained by accessing the `dmm`

object's attributes directly. See `dmm.object`

help page.

### Author(s)

Neville Jackson

Maintainer: Neville Jackson <nanddjackson@bigpond.com>

### References

dmmOverview.pdf

### See Also

In the `dmm`

package

- dmm()
for dmm function arguments and return value

- summary()
for fixed coefficients and (co)variance components

- gsummary()
for genetic parameters

- gresponse()
for predicted selection response

- make.ctable()
for comprehensive list of variance components

- mdf()
for data preparation

- print()
for brief print of dmm() output

- plot()
for residual plots for dyadic model

Other R packages

pedigreemm

nadiv

varComp

minque

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 | ```
library(dmm)
# simple univariate case, direct from the dataframe
data(dt8bal.df)
dt8.fit <- dmm(dt8bal.df, CWW ~ 1 + Sex) # components not given -> takes the default
summary(dt8.fit) # fixed effect and environmental and additive genetic components
gsummary(dt8.fit) # heritability with se's
rm(dt8.fit)
rm(dt8bal.df)
# Note: 'dt8bal.df is a small demo dataset. Results are
# illustrative but not meaningful.
# for more examples see 'dmm' help page and references
# for a tutorial and fully documented examples see {\em dmmOverview.pdf}
``` |