R: Genome scan with a multiple QTL model (MQM)

mqmscan {qtl} | R Documentation

## Genome scan with a multiple QTL model (MQM)

### Description

Genome scan with a multiple QTL model.

### Usage

    mqmscan(cross, cofactors=NULL, pheno.col = 1,
      model=c("additive","dominance"), forceML=FALSE,
      cofactor.significance=0.02, em.iter=1000,
      window.size=25.0, step.size=5.0,
      logtransform = FALSE, estimate.map = FALSE,
      plot=FALSE, verbose=FALSE, outputmarkers=TRUE,
      multicore=TRUE, batchsize=10, n.clusters=1, test.normality=FALSE,off.end=0
      )

### Arguments

`cross` | An object of class `cross`. See `read.cross` for details.
`cofactors` | List of cofactors to be analysed as cofactors in backward elimination procedure when building the QTL model. See `mqmsetcofactors` on how-to manually set cofactors for backward elimination. Or use `mqmautocofactors` for automatic selection of cofactors. Only three kind of (integer) values are allowed in the cofactor list. (0: no cofactor at this marker, 1: Use this marker as an additive cofactor, 2: Use this marker as an sexfactor (Dominant cofactor))
`pheno.col` | Column number in the phenotype matrix which should be used as the phenotype. This can be a vector of integers; One may also give a character strings matching the phenotype names. Finally, one may give a numeric vector of phenotypeIDs. This should consist of integers with 0 < value < no. phenotypes.
`model` | When scanning for QTLs should haplotype dominance be considered in an F2 intercross. Using the dominance model we scan for additive effects but also allow an additional effect where AA+AB versus BB and AA versus AB+BB. This setting is ignored for BC and RIL populations
`forceML` | Specify which statistical method to use to estimate variance components to use when QTL modeling and mapping. Default usage is the Restricted maximum likelihood approach (REML). With this option a user can disable REML and use maximum likelihood.
`cofactor.significance` | Significance level at which a cofactor is considered significant. This is estimated using an analysis of deviance, and compared to the level specified by the user. The cofactors that dont reach this level of statistical significance are NOT used in the mapping stage. Value between 0 and 1
`em.iter` | Maximum number of iterations for the EM algorithm to converge
`window.size` | Window size for mapping QTL locations, this parameter is used in the interval mapping stage. When calculating LOD scores at a genomic position all cofactors within window.size are dropped to estimate the (unbiased) effect of the location under interest.
`step.size` | Step size used in interval mapping. A lower step.size parameter increases the number of output points, this creates a smoother QTL profile
`off.end` | Distance (in cM) past the terminal markers on each chromosome to which the genotype simulations will be carried.
`logtransform` | Indicate if the algorithm should do a log transformation on the trait data in the pheno.col
`estimate.map` | Should Re-estimation of the marker locations on the genetic map occur before mapping QTLs. This method is deprecated rather use the `est.map` function in R/qtl. This is because no map is returned into the crossobject. The old map remains in the cross object.
`plot` | plot the results (default FALSE)
`verbose` | verbose output
`outputmarkers` | Needs to be explained
`multicore` | Use multicore (if available)
`batchsize` | Needs to be explained
`n.clusters` | Number of child processes to split the job into.
`test.normality` | If TRUE, test whether the phenotype follows a normal distribution via `mqmtestnormal`.

### Value

When scanning a single phenotype the function returns a `scanone` object.

The object contains a matrix of three columns for LOD scores, information content and LOD*information content with pseudo markers sorted in increasing order. For more information on the scanone object see: `scanone`

### Note

The resulting scanone object itself can be visualized using the standard R/qtl plotting routines (`plot.scanone`) or specialized function to show the mqm model (`mqmplot.singletrait`) and QTL profile. If cofactors were specified the QTL model used in scanning is also returned as a named attribute of the scanone object called mqmmodel. It can be extracted from the resulting scanone object by using the `mqmgetmodel` function or the `attr` function.

Also note the `estimate.map` parameter does not return its re-estimated genetic map, altough it is used internally. When scanning multiple genotypes a `mqmmulti` object is created. This object is just a list composed of scanone objects. The results for a single trait can be obtained from the `mqmmulti` object, in scanone format.

### Author(s)

Ritsert C Jansen; Danny Arends; Pjotr Prins; Karl W Broman kbroman@biostat.wisc.edu

### See Also

- The MQM tutorial: http://www.rqtl.org/tutorials/MQM-tour.pdf

- `MQM` - MQM description and references

- `mqmscan` - Main MQM single trait analysis

- `mqmscanall` - Parallellized traits analysis

- `mqmaugment` - Augmentation routine for estimating missing data

- `mqmautocofactors` - Set cofactors using marker density

- `mqmsetcofactors` - Set cofactors at fixed locations

- `mqmpermutation` - Estimate significance levels

- `scanone` - Single QTL scanning

### Examples

    data(map10)                    # Genetic map modeled after mouse

    # simulate a cross (autosomes 1-10)
    qtl <- c(3,15,1,0)             # QTL model: chr, pos'n, add've & dom effects
    cross <- sim.cross(map10[1:10],qtl,n=100,missing.prob=0.01)

    # MQM
    crossaug <- mqmaugment(cross)  # Augmentation
    cat(crossaug$mqm$Nind,'real individuals retained in dataset',
        crossaug$mqm$Naug,'individuals augmented\n')

    result <- mqmscan(crossaug)    # Scan

    # show LOD interval of the QTL on chr 3
    lodint(result,chr=3)

[Package qtl version 1.41-6 Index]