Compute variance-covariance and correlation matrices using data from a designed (RCBD or CRD) experiment.
Arguments
- .data
The data to be analyzed. It can be a data frame, possible with grouped data passed from
dplyr::group_by().- gen
The name of the column that contains the levels of the genotypes.
- rep
The name of the column that contains the levels of the replications/blocks.
- resp
The response variables. For example
resp = c(var1, var2, var3).- design
The experimental design. Must be RCBD or CRD.
- by
One variable (factor) to compute the function by. It is a shortcut to
dplyr::group_by(). To compute the statistics by more than one grouping variable use that function.- type
What the matrices should return? Set to
NULL, i.e., a list of matrices is returned. The argument type allow the following values'pcor', 'gcor', 'rcor', (which will return the phenotypic, genotypic and residual correlation matrices, respectively) or'pcov', 'gcov', 'rcov'(which will return the phenotypic, genotypic and residual variance-covariance matrices, respectively). Alternatively, it is possible to get a matrix with the means of each genotype in each trait, by usingtype = 'means'.
Value
An object of class covcor_design containing the following
items:
geno_cov The genotypic covariance.
phen_cov The phenotypic covariance.
resi_cov The residual covariance.
geno_cor The phenotypic correlation.
phen_cor The phenotypic correlation.
resi_cor The residual correlation.
If .data is a grouped data passed from dplyr::group_by()
then the results will be returned into a list-column of data frames.
Author
Tiago Olivoto tiagoolivoto@gmail.com
Examples
# \donttest{
library(metan)
# List of matrices
data <- subset(data_ge2, ENV == 'A1')
matrices <- covcor_design(data,
gen = GEN,
rep = REP,
resp = c(PH, EH, NKE, TKW))
# Genetic correlations
gcor <- covcor_design(data,
gen = GEN,
rep = REP,
resp = c(PH, EH, NKE, TKW),
type = 'gcor')
# Residual (co)variance matrix for each environment
rcov <- covcor_design(data_ge2,
gen = GEN,
rep = REP,
resp = c(PH, EH, CD, CL),
by = ENV,
type = "rcov")
#> Warning: There were 4 warnings in `mutate()`.
#> The first warning was:
#> ℹ In argument: `data = purrr::map(.data$data, .fun, ...)`.
#> Caused by warning in `sqrt()`:
#> ! NaNs produced
#> ℹ Run dplyr::last_dplyr_warnings() to see the 3 remaining warnings.
# }
