netmap: Constructing linkage map for diploids and polyploids

View source: R/netmap.R

netmapR Documentation

Constructing linkage map for diploids and polyploids

Description

This is one of the main functions of netgwas package. This function reconstructs linkage maps for biparental diploid and polyploid organisms using three methods.

Usage

netmap(data, method = "npn", cross= NULL, rho = NULL, n.rho = NULL, 
      rho.ratio = NULL, min.m= NULL, use.comu= FALSE, ncores = "all",
		  em.iter = 5, verbose = TRUE)

Arguments

data

An (n \times p) matrix or a data.frame corresponding to a genotype data matrix (n is the sample size and p is the number of variables). Input data can contain missing values.

method

Three available methods to construct linkage map: "gibbs", "approx", and "npn". Default is "npn"

rho

A decreasing sequence of non-negative numbers that control the sparsity level. Leaving the input as rho = NULL, the program automatically computes a sequence of rho based on n.rho and rho.ratio. Users can also supply a decreasing sequence values to override this.

n.rho

The number of regularization parameters. The default value is 6.

rho.ratio

Determines distance between the elements of rho sequence. A small value of rho.ratio results in a large distance between the elements of rho sequence. And a large value of rho.ratio results into a small distance between elements of rho. If keep it as NULL the program internally chooses a value.

cross

To be specified either "inbred" or "outbred".

min.m

Expected minimum number of markers in a chromosome. Optional

use.comu

Use community detection algorithm to detect linkage groups. Default is FALSE.

ncores

The number of cores to use for the calculations. Using ncores = "all" automatically detects number of available cores and runs the computations in parallel on (available cores - 1).

em.iter

The number of EM iterations. The default value is 5.

verbose

Providing a detail message for tracing output. The default value is TRUE.

Details

Constructing linkage maps for diploid and polyploid organisms. Diploid organisms contain two sets of chromosomes, one from each parent, whereas polyploids contain more than two sets of chromosomes. Inbreeding is mating between two parental lines where they have recent common biological ancestors. If they have no common ancestors up to roughly e.g. 4-6 generations, this is called outcrossing. In both cases the genomes of the derived progenies are random mosaics of the genome of the parents. However, in the case of inbreeding parental alleles are distinguishable in the genome of the progeny; in outcrossing this does not hold.

Value

An object with S3 class "netgwasmap" is returned:

map

Constructed linkage map.

opt.index

The index of selected graph using model selection.

cross

The pre-specified cross type.

allres

A list containing results for different regularization parameter. Belongs to class "netgwas". To visualize a path of different 3D maps consider function plot.netgwas. Note that the input data is reordered based on the estimated linkage map and is saved as data in this argument.

man

Stays FALSE.

Author(s)

Pariya Behrouzi and Ernst C. Wit
Maintainers: Pariya Behrouzi pariya.behrouzi@gmail.com

References

1. Behrouzi, P., and Wit, E. C. (2018). De novo construction of polyploid linkage maps using discrete graphical models. Bioinformatics.
2. Behrouzi, Pariya, and Ernst C. Wit. "netgwas: An R Package for Network-Based Genome-Wide Association Studies." arXiv preprint arXiv:1710.01236 (2017).
3. Guo, Jian, Elizaveta Levina, George Michailidis, and Ji Zhu. "Graphical models for ordinal data." Journal of Computational and Graphical Statistics 24, no. 1 (2015): 183-204.
4. Liu, Han, Fang Han, Ming Yuan, John Lafferty, and Larry Wasserman. "High-dimensional semiparametric Gaussian copula graphical models." The Annals of Statistics 40, no. 4 (2012): 2293-2326.
5. Witten, Daniela M., Jerome H. Friedman, and Noah Simon. "New insights and faster computations for the graphical lasso." Journal of Computational and Graphical Statistics 20, no. 4 (2011): 892-900.

Examples

## Not run: 
data(CviCol)
#Randomly change the order of markers across the genome
cvicol <- CviCol[ ,sample(ncol(CviCol))]
 
#Constructing linkage map using gibbs method
out <- netmap(cvicol, cross= "inbred", ncores=1); out
#Estimated linkage map
map <- out$map; map
#Plot the associated network
plot(out)
#Visualizing the path networks
plot(out$allres)
#Build a linkage map for 5th networks
bm <- buildMap(out, opt.index=5); bm
####################

#Constructing linkage map using approx method
out2 <- netmap(cvicol, method="approx", cross= "inbred", ncores=1); out2
#Estimated linkage map
map2 <- out2$map; map2
#Plot the related network
plot(out2)
#Visualize other networks
plot(out2$allres)
#Build a linkage map for 5th network
bm2 <- buildMap(out2, opt.index=5); bm2

#Constructing linkage map using npn method
out3 <- netmap(cvicol, method="npn", cross= "inbred", ncores=1); out3
#Estimated linkage map
map3 <- out3$map; map3
#Plot the related network
plot(out3)

## End(Not run)

netgwas documentation built on Aug. 7, 2023, 5:10 p.m.