group_mappoly: Assign markers to linkage groups

View source: R/group.R

group_mappolyR Documentation

Assign markers to linkage groups

Description

Identifies linkage groups of markers using the results of two-point (pairwise) analysis.

Usage

group_mappoly(
  input.mat,
  expected.groups = NULL,
  inter = TRUE,
  comp.mat = FALSE,
  LODweight = FALSE,
  verbose = TRUE
)

Arguments

input.mat

an object of class mappoly.rf.matrix

expected.groups

when available, inform the number of expected linkage groups (i.e. chromosomes) for the species

inter

if TRUE (default), plots a dendrogram highlighting the expected groups before continue

comp.mat

if TRUE, shows a comparison between the reference based and the linkage based grouping, if the chromosome information is available (default = FALSE)

LODweight

if TRUE, clusterization is weighted by the square of the LOD Score

verbose

logical. If TRUE (default), current progress is shown; if FALSE, no output is produced

Value

Returns an object of class mappoly.group, which is a list containing the following components:

data.name

the referred dataset name

hc.snp

a list containing information related to the UPGMA grouping method

expected.groups

the number of expected linkage groups

groups.snp

the groups to which each of the markers belong

seq.vs.grouped.snp

comparison between the genomic group information (when available) and the groups provided by group_mappoly

chisq.pval.thres

the threshold used on the segregation test when reading the dataset

chisq.pval

the p-values associated with the segregation test for all markers in the sequence

Author(s)

Marcelo Mollinari, mmollin@ncsu.edu

References

Mollinari, M., and Garcia, A. A. F. (2019) Linkage analysis and haplotype phasing in experimental autopolyploid populations with high ploidy level using hidden Markov models, _G3: Genes, Genomes, Genetics_. doi: 10.1534/g3.119.400378

Examples

    ## Getting first 20 markers from two linkage groups
    all.mrk <- make_seq_mappoly(hexafake, c(1:20,601:620))
    red.mrk <- elim_redundant(all.mrk)
    unique.mrks <- make_seq_mappoly(red.mrk)
    counts <- cache_counts_twopt(unique.mrks, cached = TRUE)
    all.pairs <- est_pairwise_rf(input.seq = unique.mrks,
                                 count.cache = counts,
                                 ncpus = 1,
                                 verbose = TRUE)

    ## Full recombination fraction matrix
    mat.full <- rf_list_to_matrix(input.twopt = all.pairs)
    plot(mat.full, index = FALSE)

    lgs <- group_mappoly(input.mat = mat.full,
                         expected.groups = 2,
                         inter = TRUE,
                         comp.mat = TRUE, #this data has physical information
                         verbose = TRUE)
    lgs
    plot(lgs)
   

mappoly documentation built on Jan. 6, 2023, 1:16 a.m.