if (interactive()) {
# Configure your server connection
set_qbms_config("https://bms.icarda.org/ibpworkbench")
# Login using your account (interactive mode)
# You can pass your username and password as parameters (batch mode)
login_bms()
# Select a crop by name
set_crop("wheat")
# Select a breeding program by name
set_program("Wheat International Nurseries")
# Select a specific study/trial by name
set_trial("IDYT39")
# Select a specific environment/location dataset
set_study("IDYT39 Environment Number 9")
# Retrieve the germplasm list of the selected environment/location
germplasm <- get_germplasm_list()
pedigree_table <- get_pedigree_table(germplasm, "germplasmName", "pedigree")
#############################
# nadiv package way
# library(nadiv)
# Get additive relationship matrix in sparse matrix format
# A <- nadiv::makeA(pedigree_table)
# Get A inverse matrix using base R function
# AINV <- solve(as.matrix(A))
#############################
# ASReml-R package way
# library(asreml)
# Represent A inverse matrix in an efficient way using i, j index and Ainverse value
# Actual genotype names of any given index are in the attr(ainv, "rowNames")
# ainv <- asreml::ainverse(pedigree_table)
#############################
# Dummy data set for testing
test <- data.frame(genotype = c("X", "Y"),
pedigree = c("A//B/D/2/C", "B/C/3/A//B/C/2/D"))
pedigree_table <- get_pedigree_table(test, "genotype", "pedigree")
}
Run the code above in your browser using DataLab