Learn R Programming

polymapR (version 1.1.1)

finish_linkage_analysis: Linkage analysis between all markertypes within LG.

Description

finish_linkage_analysis is a wrapper for linkage, or in the case of probabilistic genotypes, linkage.gp. The function performs linkage calculations between all markertypes within a linkage group.

Usage

finish_linkage_analysis(
  input_type = "discrete",
  marker_assignment,
  dosage_matrix,
  probgeno_df,
  chk,
  marker_combinations = NULL,
  target_parent = "P1",
  other_parent = "P2",
  convert_palindrome_markers = TRUE,
  ploidy,
  ploidy2 = NULL,
  pairing = c("random", "preferential"),
  prefPars = c(0, 0),
  LG_number,
  verbose = TRUE,
  log = NULL,
  ...
)

Arguments

input_type

Can be either one of 'discrete' or 'probabilistic'. For the former (default), dosage_matrix must be supplied, while for the latter probgeno_df and chk must be supplied.

marker_assignment

A marker assignment matrix with markernames as rownames and at least containing the column "Assigned_LG".

dosage_matrix

An integer matrix with markers in rows and individuals in columns.

probgeno_df

A data frame as read from the scores file produced by function saveMarkerModels of R package fitPoly, or alternatively, a data frame containing the following columns:

  • SampleName Name of the sample (individual)

  • MarkerName Name of the marker

  • P0 Probabilities of dosage score '0'

  • P1... Probabilities of dosage score '1' etc. (up to max offspring dosage, e.g. P4 for tetraploid population)

  • maxP Maximum genotype probability identified for a particular individual and marker combination

  • maxgeno Most probable dosage for a particular individual and marker combination

  • geno Most probable dosage for a particular individual and marker combination, if maxP exceeds a user-defined threshold (e.g. 0.9), otherwise NA

chk

Output list as returned by function checkF1. This argument is only needed if probabilistic genotypes are used.

marker_combinations

A matrix with four columns specifying marker combinations to calculate linkage. If NULL all combinations are used for which there are rf functions. Dosages of markers should be in the same order as specified in the names of rf functions. E.g. if using 1.0_2.0 and 1.0_3.0 types use: matrix(c(1,0,2,0,1,0,3,0), byrow = TRUE, ncol = 4)

target_parent

Character string specifying target parent.

other_parent

Character string specifying other parent.

convert_palindrome_markers

Logical. Should markers that behave the same for both parents be converted to a workable format for that parent? E.g.: should 3.1 markers be converted to 1.3?

ploidy

Ploidy level of parent 1. If parent 2 has the same ploidy level, then also the ploidy level of parent 2.

ploidy2

Integer, by default NULL. If parental ploidies differ, use this to specify the ploidy of parent 2. Note that in cross-ploidy situations, ploidy2 must be smaller than ploidy.

pairing

Type of pairing at meiosis, with options "random" or "preferential".

prefPars

The estimates for preferential pairing parameters for parent 1 and 2, in range 0 <= p < 2/3. By default this is c(0,0) (so, no preferential pairing). See the function test_prefpairing and the vignette for more details.

LG_number

Number of linkage groups (chromosomes).

verbose

Should messages be sent to stdout or log?

log

Character string specifying the log filename to which standard output should be written. If NULL log is send to stdout.

(Other) arguments passed to linkage

Value

Returns a matrix with marker assignments. Number of linkages of 1.0 markers are artificial.

Examples

Run this code
# NOT RUN {
data("screened_data3", "marker_assignments_P1")
linkages_list_P1<-finish_linkage_analysis(marker_assignment=marker_assignments_P1,
                                          dosage_matrix=screened_data3,
                                          target_parent="P1",
                                          other_parent="P2",
                                          convert_palindrome_markers=FALSE,
                                          ploidy=4,
                                          pairing="random",
                                          LG_number=5)
                                          
# }

Run the code above in your browser using DataLab