configs {bqtl} R Documentation

## Lookup loci or effects for genetic model formulas

### Description

Convert numeric indexes to names of regressors for a genetic model. One or many genetic models can be specified through the use of this function. It is used on the right hand side of a formula in the bqtl function.

### Usage

configs(x,...,scope, method = NULL)



### Arguments

 x Typically an integer, an integer vector, an array, or a list with a configs component such as returned by swapbc1 . However, it can also be a character string, vector, et cetera, in which case the elements must belong to names(scope) ... Optional arguments to be used when is.atomic(x) is TRUE. scope (Optional and) Usually not supplied by the user. Rather bqtl fills this in automatically. A vector of regressor names, like the reg.names component returned by make.analysis.obj. When mode(x) is "character", then names(scope) must be non-NULL method (Optional and) Usually not supplied by the user. A method like "F2". Typically, this is determined by internal code.

### Details

configs is used in the model formula notation of bqtl, possibly more than once, and possibly with regressors named in the usual manner. configs is intended to speed up the specification and examination of genetic models by allowing many models to be specified in a shorthand notation in a single model formula. The names of genetic loci can consist of marker names, names that encode chromosome number and location, or other shorthand notations. The names of terms in genetic models will typically include the names of the locus and may prepend "add." or "dom." or similar abbreviations for the 'additive' and 'dominance' terms associated with the locus.

When used as in bqtl( y ~ configs(34), my.analysis.obj ), it will look up the term my.analysis.obj$reg.names[34]. When this is passed back to bqtl, it get pasted into the formula and is subsequently processed to yield the fit for a one gene model. When used as in bqtl( y ~ configs(34,75,172), my.analysis.obj) it looks up each term and returns a result to bqtl that results in fitting a 3 gene model (without interaction terms). When x is a vector, array, or list, the processing typically returns pieces of many model formulas. bqtl(y ~ configs(26:75), ...) results in a list of 50 different one gene model fits from bqtl for the terms corresponding to the 26th through the 75th variables.  bqtl(y ~ configs(cbind(c(15,45,192),c(16,46,193))),...) returns two four gene models. And more generally, whenever is.array(x) is TRUE, the columns (or slices) specify  dim(x)[1]/length(x) different models. When x$configs is an array, this also happens. This turns out to be useful when the result of running swapbc1 or swapf2 is treated as an importance sample. In such a case, bqtl(y ~ configs(my.swap),my.analysis.obj) will return a list in which element i is the ith sample drawn when my.swap <- swapbc1(...) was run.

### Value

A character vector whose element(s) can be parsed as the right hand side of a model formula.

### Author(s)

Charles C. Berry cberry@ucsd.edu

bqtl and the examples there for a sense of how to use configs, make.analysis.obj for the setup that encodes the marker map and the marker information, swapbc1 and swapf2 for generating samples to be screened by bqtl.