hypredTpGenomeSpecific: Determine the true genetic performance (genotypic value) of...

Description Usage Arguments Details Value Author(s) See Also Examples

Description

A generic function to determine the true genetic performance (genotypic value) of individuals according to their genome, with effects beeing genome specific.

Usage

1
2
3
4
hypredTpGenomeSpecific(object, ...)
## S4 method for signature 'hypredGenome'
hypredTpGenomeSpecific(object, genotypes,
add.eff.G1 = NULL, add.eff.G2 = NULL, dom.eff.G1 = NULL, dom.eff.G2 = NULL)

Arguments

object

an object of a class that holds information on genome parameters necessary to determine the true genetic performance of individuals, typically an "hypredGenome" object.

genotypes

Integer matrix giving the genotypes of the individuals (as a series of 1s and 0s). Two adjacent rows stand for one individual (the two chromosome sets). Consistently, odd rows belong to genome 1, even rows to genome 2

add.eff.G1

numeric vector with the additive effects of the QTL alleles from genome 1.

add.eff.G2

numeric vector with the additive effects of the QTL alleles from genome 2.

dom.eff.G1

numeric vector with the dominance effects of the QTL, when the loci is heterozygous and the 1 allele comes from genome 1.

dom.eff.G2

numeric vector with the dominance effects of the QTL, when the loci is heterozygous and the 1 allele comes from genome 2.

...

Methods may require further arguments.

Details

The additive contribution of a genome to the genotypic value is determined by summing the additive effects of this genome of all loci where the 1 allele comes from that genome.

The contribution of a genome to the dominance part of the genotypic value is determined by summing the dominance effects of all dominance QTL that are heterozygous and where the 1 allele comes from that genome.

Example: Assume that there is only one QTL, with both additive and dominance effect. The additive effect is 1 for genome 1 and 0.5 for genome 2, the dominance effect is 0.5 for genome 1 and -0.5 for genome 2. An individual with genotype 0-1 at this QTL would have a performance of 0 (additive part genome 1: 0, additive part genome 2: 0.5, dominance part genome 1: 0, dominance part genome 2: -0.5 ), an individual with 1-0 would have a performance of 1.5 (additive part genome 1: 1, additive part genome 2: 0, dominance part genome 1: 0.5, dominance part genome 2: 0).

The defaults of all four arguments that give the effects are NULL. When an argument is NULL, the effects are taken from the object given to object. Hence, calling hypredTpGenomeSpecific with all effect arguments NULL, produces identical results as hypredTruePerformance.

An indirect way of obtaining the additive genotypicic values when dominance QTL were assigned is to call the function with add.eff.G1 = NULL, add.eff.G2 = NULL, dom.eff.G1 = rep(0, number.dominance.qtl), dom.eff.G2 = rep(0, number.dominance.qtl)

The number of effects must agree with the numbers of QTL assigned to object. If no QTLs are assigned, the function returns an error.

Value

A one column matrix with as many elements as there were individuals, giving their true genetic performances in the order in which they appeard in the the matrix.

Author(s)

Frank Technow

See Also

The function hypredRecombine which is used to create progeny genomes, the function hypredNewQTL which allows to assign new QTLs to the "hypredGenome" object and the function hypredTruePerformance which determines the standart, non-genome-specific values.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
## one chromosome of length 1 M and 5 SNP

genomeDef <- hypredGenome(1, 1.0, 5)

genomeDef <- hypredNewQTL(genomeDef,
                          new.id.add = 1,
                          new.eff.add = 1,
                          new.id.dom = 1,
                          new.eff.dom = 0.5)


summary(genomeDef)

## assign one QTL with and additive effect of 1 to the first loci,
## with the also having a dominance effect of 0.5 . Firts QTL
## is perfect marker as well.

genomeDef <- hypredNewQTL(genomeDef,
                          new.id.add = 1,
                          new.id.dom = 1,
                          new.id.per.mar = 1,
                          new.eff.add = 1,
                          new.eff.dom = 0.5)

summary(genomeDef)

## QTL genotype individual 1 = 1-1
## QTL genotype individual 2 = 0-1

individuals <- matrix(c(1,0,1,0,1,
                        1,1,0,1,0,
                        0,0,1,0,1,
                        1,1,0,1,0), nrow = 4, byrow = TRUE)

gvalues <- hypredTpGenomeSpecific(genomeDef,
                                  genotypes = individuals,
                                  add.eff.G1 = 1, ## additive effect from genome 1
                                  add.eff.G2 = 0.5, ## additive effect from genome 2
                                  dom.eff.G1 = 0.5, ## dominance effect from genome 1 
                                  dom.eff.G2 = -0.5) ## dominance effect from genome 2 

## value of ind. 1 must be 1.5, of ind. 2 must be 0
print(gvalues)

## test
gvalues <- as.vector(gvalues)

stopifnot(all.equal(gvalues, c(1.5, 0.0)))

timflutre/hypred documentation built on May 6, 2019, 10:51 a.m.