Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup--------------------------------------------------------------------
library(selection.index)
# Load the built-in maize phenotype dataset
data("maize_pheno")
# Extract the traits of interest
traits <- c("Yield", "PlantHeight", "DaysToMaturity")
# Calculate Genotypic (gmat) and Phenotypic (pmat) covariance matrices
gmat <- gen_varcov(maize_pheno[, traits], maize_pheno$Genotype, maize_pheno$Block)
pmat <- phen_varcov(maize_pheno[, traits], maize_pheno$Genotype, maize_pheno$Block)
# Define economic weights for the three traits
wmat <- weight_mat(data.frame(Trait = traits, Weight = c(1, -1, 1)))
## ----rlpsi_example------------------------------------------------------------
# Restrict trait 2 (PHT) to have ZERO expected genetic gain
rlpsi_res <- rlpsi(
pmat = pmat,
gmat = gmat,
wmat = wmat,
restricted_traits = c(2)
)
# View the summary and coefficients
print(rlpsi_res$summary)
# View the expected genetic gains (Delta_G)
print(rlpsi_res$Delta_G)
## ----ppg_lpsi_example---------------------------------------------------------
# Specify the desired proportions
k_proportions <- c(2, 1, 1)
# Calculate the PPG-LPSI
ppg_res <- ppg_lpsi(pmat = pmat, gmat = gmat, k = k_proportions, wmat = wmat)
# View the expected genetic gains
print(ppg_res$Delta_G)
## ----dg_lpsi_example----------------------------------------------------------
# Explicit vector of desired absolute genetic gains
desired_gains <- c(5, -2, 1)
# Calculate DG-LPSI
dg_res <- dg_lpsi(pmat = pmat, gmat = gmat, d = desired_gains)
# Check the achieved proportional genetic gains
print(dg_res$Delta_G)
# The DG-LPSI also calculates implied Smith-Hazel economic weights
print(dg_res$implied_weights_normalized)
## ----manual_c_matrix----------------------------------------------------------
# Manually restrict traits #1 and #3:
# Create a 3x2 constraint matrix
C_matrix <- matrix(
c(
1, 0, 0, # Restrict trait 1
0, 0, 1
), # Restrict trait 3
nrow = 3, ncol = 2
)
# Pass directly to RLPSI
rlpsi_manual <- rlpsi(pmat = pmat, gmat = gmat, wmat = wmat, C = C_matrix)
print(rlpsi_manual$Delta_G)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.