if (interactive()) {
set_qbms_config("https://bms.icarda.org/ibpworkbench")
login_bms()
set_crop("wheat")
set_program("Wheat International Nurseries")
set_trial("IDYT39")
set_study("IDYT39 Environment Number 9")
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