Last updated: 2025-01-20

Checks: 6 1

Knit directory: Genomic-Selection-for-Drought-Tolerance-Using-Genome-Wide-SNPs-in-Casava/

This reproducible R Markdown analysis was created with workflowr (version 1.7.1). The Checks tab describes the reproducibility checks that were applied when the results were created. The Past versions tab lists the development history.


The R Markdown is untracked by Git. To know which version of the R Markdown file created these results, you’ll want to first commit it to the Git repo. If you’re still working on the analysis, you can ignore this warning. When you’re finished, you can run wflow_publish to commit the R Markdown file and build the HTML.

Great job! The global environment was empty. Objects defined in the global environment can affect the analysis in your R Markdown file in unknown ways. For reproduciblity it’s best to always run the code in an empty environment.

The command set.seed(20221020) was run prior to running the code in the R Markdown file. Setting a seed ensures that any results that rely on randomness, e.g. subsampling or permutations, are reproducible.

Great job! Recording the operating system, R version, and package versions is critical for reproducibility.

Nice! There were no cached chunks for this analysis, so you can be confident that you successfully produced the results during this run.

Great job! Using relative paths to the files within your workflowr project makes it easier to run your code on other machines.

Great! You are using Git for version control. Tracking code development and connecting the code version to the results is critical for reproducibility.

The results in this page were generated with repository version 00c2e25. See the Past versions tab to see a history of the changes made to the R Markdown and HTML files.

Note that you need to be careful to ensure that all relevant files for the analysis have been committed to Git prior to generating the results (you can use wflow_publish or wflow_git_commit). workflowr only checks the R Markdown file, but you know if there are other scripts or data files that it depends on. Below is the status of the Git repository when the results were generated:


Ignored files:
    Ignored:    .Rhistory
    Ignored:    .Rproj.user/
    Ignored:    analysis/figure/GWS.Rmd/
    Ignored:    analysis/figure/clone_selection.Rmd/
    Ignored:    data/Artigo/
    Ignored:    data/allchrAR08.txt
    Ignored:    data/data.rar
    Ignored:    data/geno.rds
    Ignored:    data/pheno.rds
    Ignored:    output/BLUPS_density_med_row_col.png
    Ignored:    output/accuracy_all_methods.tiff
    Ignored:    output/indice_selection_GEBV_GETGV.tiff
    Ignored:    output/kappa.tiff

Untracked files:
    Untracked:  analysis/GWS_BayesA.Rmd
    Untracked:  analysis/GWS_BayesB.Rmd
    Untracked:  analysis/GWS_RF.Rmd
    Untracked:  analysis/clone_selection.Rmd
    Untracked:  data/.gitignore
    Untracked:  output/BayesA_ETA_1_ScaleBayesA-Weverton.dat
    Untracked:  output/BayesA_mu-Weverton.dat
    Untracked:  output/BayesA_varE-Weverton.dat
    Untracked:  output/GEBV_BLUP.csv
    Untracked:  output/dierencial_selecao.csv
    Untracked:  output/pesos_BLUPS_all clones.csv
    Untracked:  output/pesos_GEBVS_all clones.csv
    Untracked:  output/pesos_GETGVS_all clones.csv
    Untracked:  output/results_Broad_SNP_h2.csv
    Untracked:  output/results_MSPE.csv
    Untracked:  output/results_accuracy.csv
    Untracked:  output/results_h2_GBLUP.csv
    Untracked:  output/results_kappa.csv
    Untracked:  output/results_values_kappa.csv

Unstaged changes:
    Modified:   .gitattributes
    Unmerged:   analysis/GWS_G-BLUP.Rmd
    Unmerged:   analysis/GWS_RKHS.Rmd
    Unmerged:   analysis/GWS_RR-BLUP.Rmd
    Modified:   analysis/figure/phenotype.Rmd/check-missing-1.png
    Modified:   analysis/phenotype.Rmd
    Modified:   output/BLUPS_par_mmer.Rdata
    Modified:   output/BLUPS_row_col_random.csv
    Unmerged:   output/BayesA_ETA_1_ScaleBayesA.dat
    Unmerged:   output/BayesA_mu.dat
    Unmerged:   output/BayesA_varE.dat
    Unmerged:   output/BayesB_ETA_1_parBayesB.dat
    Unmerged:   output/BayesB_mu.dat
    Unmerged:   output/BayesB_varE.dat
    Modified:   output/pheno_mean_sd.csv
    Modified:   output/semester_means.xlsx

Staged changes:
    New:        data/Articles/Accuracy of Predicting the Genetic Risk of Disease Using.pdf
    New:        data/Articles/Classification and Regression by randomforest.pdf
    New:        data/Articles/Comparative Analysis of CDPK Family in Maize, Arabidopsis, Rice, and Sorghum Revealed Potential Targets for Drought Tolerance.pdf
    New:        data/Articles/Conventional breeding, marker assisted selection, genomic selection.pdf
    New:        data/Articles/Crop Stress and its Management.pdf
    New:        data/Articles/DAS-PGMEI-42419198000192-AC2024.pdf
    New:        data/Articles/Diallel analysis of cassava brown streak disease, yield and yield related characteristics in Mozambique.pdf
    New:        data/Articles/Diallel analysis of early storage root yield and disease resistance traits in cassava (Manihot esculenta Crantz).pdf
    New:        data/Articles/Diallel inheritance of relevant traits in cassava (Manihot esculenta Crantz) adapted to acid-soil savannas.pdf
    New:        data/Articles/Drought stress tolerance in wheat and barley Advances in physiology, breeding and genetics research.pdf
    New:        data/Articles/Early evaluation of genotype x harvest interactions in cassava crops under.pdf
    New:        data/Articles/Early prediction models for cassava root yield in different water regimes.pdf
    New:        data/Articles/Enhancing genomic prediction with Stacking Ensemble Learning in Arabica Coffee.pdf
    New:        data/Articles/Enhancing the rate of genetic gain in public-sector plant breeding programs_ lessons from the breeder’s equation.pdf
    New:        data/Articles/Environmental factors influence the production of flowers and fruits of cassava.pdf
    New:        data/Articles/Evaluation of Genomic Selection TrainingPopulation Designs and Genotyping Strategiesin Plant Breeding Programs Using Simulation.pdf
    New:        data/Articles/Evaluation of Seedling Survivability and Growth Response as.pdf
    New:        data/Articles/Evaluation of cassava germplasm for drought tolerance under field conditions.pdf
    New:        data/Articles/Factors affecting genomic selection revealed by.pdf
    New:        data/Articles/From Genetics to Functional Genomics Improvement in Drought Signaling and Tolerance in Wheat.pdf
    New:        data/Articles/Genetic Data Analysis for Plant and Animal Breeding.pdf
    New:        data/Articles/Genetic and Environmental Effects on Dry Matter Content.pdf
    New:        data/Articles/Genetic gains with genomic versus phenotypic selection for drought and waterlogging tolerance in tropical maize (Zea mays L.).pdf
    New:        data/Articles/Genetic parameters and path analysis for root Oliveira et al_CBAB_2021.pdf
    New:        data/Articles/Genetic parameters and path analysis for root yield of cassava under drought and early harvest.pdf
    New:        data/Articles/Genetic parameters for drought‑tolerance in cassava.pdf
    New:        data/Articles/Genetic parameters, stability and selection of cassava genotypes between rainy and water stress conditions.pdf
    New:        data/Articles/Genome assisted prediction of quantitative.pdf
    New:        data/Articles/Genome-Assisted Prediction of Quantitative Traits Using the R Package sommer.pdf
    New:        data/Articles/Genome-wide association analysis reveals new insights.pdf
    New:        data/Articles/Genome-wide association mapping and genomic prediction for CBSD resistance in Manihot esculenta.pdf
    New:        data/Articles/Genome-wide association study of drought tolerance Silva et al_Euphytica_2021.pdf
    New:        data/Articles/Genome-wide regression and prediction with the BGLR statistical package.pdf
    New:        data/Articles/Genome-wide selection in cassava.pdf
    New:        data/Articles/Genomic Best Linear Unbiased Prediction (gBLUP).pdf
    New:        data/Articles/Genomic Measures of Relationship and Inbreeding.pdf
    New:        data/Articles/Genomic Prediction and Selection for Fruit Traits in Winter Squash.pdf
    New:        data/Articles/Genomic Selection A Tool for Accelerating the Efficiency of Molecular Breeding for Development of Climate-Resilient Crops.pdf
    New:        data/Articles/Genomic Selection for Crop Improvement.pdf
    New:        data/Articles/Genomic Selection for Drought Tolerance Using Genome-Wide SNPs in Maize.pdf
    New:        data/Articles/Genomic Selection in Plant.pdf
    New:        data/Articles/Genomic Selection in the Era of Next Generation Sequencing for Complex Traits in Plant Breeding.pdf
    New:        data/Articles/Genomic mating in outbred species predicting cross.pdf
    New:        data/Articles/Genomic prediction in multi-environment trials in maize using statistical and machine learning methods.pdf
    New:        data/Articles/Genomic prediction of agronomic traits in wheat using different models and cross-validation designs.pdf
    New:        data/Articles/Genomic prediction of drought tolerance during seedling stage in maize using low-cost molecular markers.pdf
    New:        data/Articles/Genomic prediction through machine learning and neural networks for traits with epistasis.pdf
    New:        data/Articles/Genomic selection for productive traits in biparental cassava breeding populations.pdf
    New:        data/Articles/Genomic selection outperforms marker assisted selection for grain yield and physiological traits in a maize doubled haploid.pdf
    New:        data/Articles/Genomic selection strategies for clonally propagated - Werner et al_bioRxiv_2020.pdf
    New:        data/Articles/Genomic-Assisted Prediction of Genetic Value With.pdf
    New:        data/Articles/Genomics Assisted Breeding of Crops for Abiotic Stress Tolerance, Vol. II.pdf
    New:        data/Articles/Identification, Characterization, and Functional Validation of Drought-responsive MicroRNAs in Subtropical Maize Inbreds.pdf
    New:        data/Articles/Impacts of Harvesting Age and Pricing Schemes on Economic sustainability-14-07768.pdf
    New:        data/Articles/Impacts of Harvesting Age and Pricing Schemes on Economic.pdf
    New:        data/Articles/Improvement of Drought Resistance in Crops From Conventional Breeding to Genomic Selection.pdf
    New:        data/Articles/Improving accuracies of genomic predictions for drought tolerance in maize by joint modeling of additive and dominance effects.pdf
    New:        data/Articles/Increasing cassava root yield Additive-dominant genetic models for selection of parents and clones.pdf
    New:        data/Articles/Integrated Approach in Genomic Selection to Accelerate.pdf
    New:        data/Articles/Investigating Drought Tolerance in Chickpea Using Genome-Wide Association Mapping and Genomic Selection Based on Whole-Genome.pdf
    New:        data/Articles/Invited review Genomic selection in dairy cattle Progress and challenges.pdf
    New:        data/Articles/Large-scale genome-wide association study, using historical.pdf
    New:        data/Articles/LivroMandioca2016.pdf
    New:        data/Articles/Marker-Based Estimates Reveal Significant.pdf
    New:        data/Articles/MeMYB26, a drought-responsive transcription factor in cassava (Manihot esculenta Crantz).pdf
    New:        data/Articles/Molecular Markers and Selection for Complex Traits in Plants Learning from the Last 20 Years.pdf
    New:        data/Articles/Multi-trait selection in multi-environments for performance and stability in cassava genotypes.pdf
    New:        data/Articles/New cassava cultivars for starch and flour.pdf
    New:        data/Articles/NexGen Cassava Impact Report.pdf
    New:        data/Articles/Non-additive Effects in Genomic Selection.pdf
    New:        data/Articles/Number and Fitness of Selected Individuals in Marker-Assisted and Phenotypic.pdf
    New:        data/Articles/On the Additive and Dominant Variance and.pdf
    New:        data/Articles/PRODUÇÃO DE MANDIOCA DE MESA SOB DÉFICIT HÍDRICO DO SOLO.pdf
    New:        data/Articles/Parâmetros genéticos da mandioca quanto à tolerância ao deficit hídrico.pdf
    New:        data/Articles/Phenotypic approaches to drought in cassava review.pdf
    New:        data/Articles/Phenotypic diversity and selection in biofortified cassava.pdf
    New:        data/Articles/Plant Breeding Past, Present and Future.pdf
    New:        data/Articles/Plant breeding and climate changes.pdf
    New:        data/Articles/Predicting the accuracy of genomic predictions.pdf
    New:        data/Articles/Prediction of Genetic Values of Quantitative Traits in Plant Breeding.pdf
    New:        data/Articles/Prediction of total genetic value using genome-wide dense marker maps.pdf
    New:        data/Articles/Predictions of the accuracy of genomic prediction connecting R2, selection index theory, and Fisher information.pdf
    New:        data/Articles/Prospects for Genomic Selection in Cassava Breeding.pdf
    New:        data/Articles/Rapid Cycling Genomic Selection in a Multiparental.pdf
    New:        data/Articles/Reproductive barriers in cassava Factors and.pdf
    New:        data/Articles/The Effects of Restriction-Enzyme Choice.pdf
    New:        data/Articles/The Plant Genome - 2017 - Annicchiarico - GBS‐Based Genomic Selection for Pea Grain Yield under Severe Terminal Drough.pdf
    New:        data/Articles/The chaperone MeHSP90 recruits MeWRKY20 and MeCatalase1to regulate drought stress resistance in cassava.pdf
    New:        data/Articles/Training set optimization under population structure.pdf
    New:        data/Articles/Using mating designs to uncover QTL and the genetic architecture of complex traits.pdf
    New:        data/Articles/Very Early Biomarkers Screening for Water Deficit Tolerance in Commercial Eucalyptus Clones.Agronomy-Basel.pdf
    New:        output/.gitignore
    Modified:   output/BLUPS_par_mmer.Rdata
    Modified:   output/BLUPS_row_col_random.csv
    New:        output/Density_residual_row_col.tiff
    New:        output/Residuals_vs_fitted_row_col.tiff
    New:        output/result_sommer_row_col_random.RDS
    New:        output/varcomp_row_col.tiff

Note that any generated files, e.g. HTML, png, CSS, etc., are not included in this status report because it is ok for generated content to have uncommitted changes.


There are no past versions. Publish this analysis with wflow_publish() to start tracking its development.


Configurations and packages

To perform the analyses, we will need the following packages:

library(tidyverse)
library(kableExtra)
library(ggthemes)
library(metan)
library(psych)
library(viridis)
library(ggpubr)

Data

results <- readRDS("output/results_cv_G_BLUP.RDS") %>%
  mutate(method = "G-BLUP") %>%
  bind_rows(
    readRDS("output/results_cv_RR_BLUP.RDS") %>%
      mutate(method = "RR-BLUP"),
    readRDS("output/results_cv_RKHS.RDS") %>%
      mutate(method = "RKHS"),
    readRDS("output/results_cv_BayesA.RDS") %>%
      mutate(method = "Bayes A"),
    readRDS("output/results_cv_BayesB.RDS") %>%
      mutate(method = "Bayes B"),
    readRDS("output/results_cv_RF.RDS") %>%
      mutate(method = "RF"),
    readRDS("output/results_cv_GEBVS_DOM.RDS") %>%
      mutate(method = "G-BLUP-DOM")
  )

traits <- unique(results$Trait)

Results

Plot boxplot from Accuracy

Figure 2 Boxplot of predictive ability

results %>%
  ggplot(aes(x = method, y = Ac, fill = method)) +
  geom_boxplot() +
  facet_wrap(~ Trait, ncol = 6) +
  expand_limits(y = 0) +
  labs(y = "Accuracy", x = "", fill = "Method") +
  scale_fill_gdocs() +
  theme(
    text = element_text(size = 25),
    axis.text.x = element_blank(),
    axis.ticks.x = element_blank(),
    legend.position = "top",
    legend.title = element_blank(),
    legend.box = "horizontal",
    panel.spacing = unit(1, "lines"),
    strip.background = element_blank(),
    panel.background = element_blank(),
    plot.background = element_blank(),
    legend.background = element_blank(),
    legend.box.background = element_blank(),
    legend.key = element_blank()
  ) +
  guides(fill = guide_legend(
    nrow = 1,
    byrow = TRUE,
    keywidth = 1.5,
    keyheight = 1,
    title.position = "top"
  ))

Table to Figure 2 Boxplot of predictive ability

# Calcular médias e desvio padrão de Ac por Trait e método
results_Ac <- results %>%
  group_by(Trait, method) %>%
  summarise(
    Ac_mean = round(mean(Ac) * 100, 2),
    Ac_sd = round(sd(Ac) * 100, 2),
    .groups = "drop"  # Remove agrupamento após summarise
  ) %>%
  select(Trait, method, Ac_mean) %>%
  pivot_wider(names_from = method, values_from = Ac_mean)

# Exibir resultados em tabela com kable
results_Ac %>%
  kbl(escape = FALSE, align = "c") %>%
  kable_classic(
    "hover",
    full_width = FALSE,
    position = "center",
    fixed_thead = TRUE
  )
Trait Bayes A Bayes B G-BLUP G-BLUP-DOM RF RKHS RR-BLUP
DMC 21.64 20.94 22.00 22.00 15.48 19.00 24.46
FRY 32.22 31.94 32.66 32.10 31.40 32.80 31.16
HI 24.26 23.90 24.06 23.08 25.54 26.40 24.78
N_Roots 25.28 24.94 25.42 26.02 25.78 24.84 24.62
Nstem.Plant 27.08 26.28 27.22 26.40 20.82 26.00 26.84
Plant.Height 29.58 29.72 29.32 29.56 28.86 30.32 30.30
Root.Di 31.60 31.28 31.80 31.50 28.24 31.70 29.48
Root.Le 36.94 36.54 36.72 36.24 34.46 37.14 36.16
ShY 31.76 32.02 32.10 32.16 31.82 32.88 32.40
StC 21.80 21.16 22.12 22.12 15.56 19.08 20.12
StY 30.44 30.04 31.04 29.86 28.18 30.90 31.70
Stem.D 34.58 34.64 34.68 35.34 34.12 35.12 34.02
# Calcular médias e desvio padrão de MSPE por Trait e método
results_MSPE <- results %>%
  group_by(Trait, method) %>%
  summarise(
    MSPE_mean = round(mean(MSPE) * 100, 2),
    MSPE_sd = round(sd(MSPE) * 100, 2),
    .groups = "drop"  # Remove agrupamento após summarise
  ) %>%
  select(Trait, method, MSPE_mean) %>%
  pivot_wider(names_from = method, values_from = MSPE_mean)

# Exibir resultados em tabela com kable
results_MSPE %>%
  kbl(escape = FALSE, align = "c") %>%
  kable_classic(
    "hover",
    full_width = FALSE,
    position = "center",
    fixed_thead = TRUE
  )
Trait Bayes A Bayes B G-BLUP G-BLUP-DOM RF RKHS RR-BLUP
DMC 589.82 593.86 585.32 585.32 628.74 611.50 576.84
FRY 115.86 116.34 115.26 116.12 117.38 119.72 116.66
HI 1195.86 1199.12 1189.96 1198.26 1212.24 1176.24 1186.60
N_Roots 86.08 86.14 85.74 85.48 87.68 93.12 88.26
Nstem.Plant 2.76 2.80 2.76 2.78 2.98 3.30 2.88
Plant.Height 0.74 0.74 0.74 0.74 0.78 0.80 0.78
Root.Di 332.88 333.62 332.10 332.84 348.66 339.12 338.06
Root.Le 180.68 181.42 180.78 181.48 187.28 198.94 199.96
ShY 1259.58 1257.72 1253.94 1254.40 1276.28 1324.08 1261.50
StC 586.66 589.94 582.36 582.36 625.52 608.10 591.46
StY 7.08 7.10 7.02 7.10 7.24 7.24 7.02
Stem.D 0.78 0.76 0.76 0.76 0.80 0.84 0.80

Clone Selection

First let’s add the phenotypic means to the BLUPS and GEBVS

# Carregar dados
media_pheno <- read.csv("output/mean_pheno.csv")

BLUP <- readRDS("data/pheno.rds") %>%
  pivot_longer(cols = -ID_Clone, names_to = "Trait", values_to = "BLUP")

# Inserir o método em cada data frame dentro de results$result
results$result <- map2(results$result, results$method, ~mutate(.x, method = .y))

# Combinar todos os data frames em um único data frame
GEBV_BLUP <- bind_rows(results$result) %>%
  group_by(ID_Clone, Trait, method) %>%
  summarise(GEBV = mean(GEBV), .groups = "drop") %>%
  pivot_wider(names_from = method, values_from = GEBV) %>%
  full_join(BLUP, by = c("ID_Clone", "Trait"))

# Adicionar as médias fenotípicas aos valores numéricos e combinar com GEBV
GEBV_BLUP <- GEBV_BLUP %>%
  rowwise() %>%
  mutate(across(where(is.numeric), ~ . + media_pheno[[Trait]])) %>%
  ungroup()

# Visualizar os primeiros dados
GEBV_BLUP %>%
  head() %>%
  kbl(escape = FALSE, align = "c") %>%
  kable_classic("hover", full_width = FALSE, position = "center", fixed_thead = TRUE)
ID_Clone Trait Bayes A Bayes B G-BLUP G-BLUP-DOM RF RKHS RR-BLUP BLUP
Alagoana363.250437472 FRY 5.147048 5.136213 5.188144 5.255897 5.275877 5.432111 5.225135 4.980623
Alagoana363.250437472 HI 24.607030 24.568547 24.633235 24.672048 24.723454 24.444491 25.165928 24.557231
Alagoana363.250437472 N_Roots 4.154301 4.178224 4.225263 4.243897 4.193898 4.443810 4.426670 3.958834
Alagoana363.250437472 Plant.Height 1.161012 1.161261 1.160419 1.165587 1.165375 1.187893 1.175966 1.170988
Alagoana363.250437472 Root.Di 29.609365 29.596120 29.557053 29.568693 30.003957 29.749311 29.896532 30.209694
Alagoana363.250437472 Root.Le 23.563618 23.558956 23.535616 23.534217 23.494775 23.850965 23.866019 23.341948

Now let’s group the BLUPs data with the GEBVs and GETGVs data and add a Weights column for each increase or decrease characteristic.

selection_parents <- GEBV_BLUP %>% 
  rename(GEBV = `G-BLUP`, GETGV = `G-BLUP-DOM`) |>
  mutate(Weights = ifelse(
    Trait %in% c(
      "N_Roots",
      "FRY",
      "ShY",
      "DMC" ,
      "StY",
      "Plant.Height",
      "HI" ,
      "StC" ,
      "Root.Le" ,
      "Root.Di",
      "Stem.D" ,
      "Nstem.Plant"
    ),
    "acrescimo",
    "descrescimo"
  ))

calcular_pesos <- function(data, var){
  data  %>%
  select(ID_Clone, Trait, var) %>%
  pivot_wider(names_from = Trait, values_from = var) %>%
  mutate(
    N_Roots = 15 * N_Roots,
    FRY = 20 * FRY,
    ShY = 10 * ShY,
    DMC = 15 * DMC,
    StY = 10 * StY,
    Plant.Height = 5 * Plant.Height,
    HI = 10 * HI,
    StC = 10 * StC,
    Root.Le = 5 * Root.Le,
    Root.Di = 5 * Root.Di,
    Stem.D = 5 * Stem.D,
    Nstem.Plant = 5 * Nstem.Plant
  ) %>%
  mutate(pesos =
           rowSums(.[2:13], na.rm = TRUE))
}

pesos_BLUP <- calcular_pesos(selection_parents, "BLUP")
pesos_GEBV <- calcular_pesos(selection_parents, "GEBV")
pesos_GETGV <- calcular_pesos(selection_parents, "GETGV")

Individual selection to each trait

results_kappa <- data.frame()
SI <- c(10, 15, 20, 25, 30)

for (j in traits) {
  for (i in SI) {
    sel_parents <- selection_parents |>
      filter(Trait == j)  %>%
      na.omit() |>
      droplevels() %>%
      data.frame()
    
    Clones_GEBV_sel <- pesos_GEBV %>%
      right_join(sel_parents) %>%
      droplevels() %>% 
      arrange(desc(pesos)) %>%
      slice(1:(nlevels(ID_Clone) * (i / 100))) |>
      droplevels()
    
    Clones_GETGV_sel <- pesos_GETGV %>%
      right_join(sel_parents) %>%
      droplevels() %>% 
      arrange(desc(pesos)) %>%
      slice(1:(nlevels(ID_Clone) * (i / 100))) |>
      droplevels()
    
    Clones_BLUPS_sel <- pesos_BLUP %>%
      right_join(sel_parents) %>%
      droplevels() %>% 
      arrange(desc(pesos)) %>%
      slice(1:(nlevels(ID_Clone) * (i / 100))) |>
      droplevels()
    
    Clones_sel_BLUPS <- sel_parents %>%
      arrange(ifelse(Weights == "acrescimo", desc(BLUP), BLUP)) |>
      slice(1:(nlevels(ID_Clone) * (i / 100))) |>
      #filter(ID_Clone %in% Clones_BLUPS_sel$ID_Clone) %>%
      droplevels()
    
    X0_BLUPS <- selection_parents |>
      filter(Trait == j) |>
      select(BLUP) |>
      summarise(X0 = mean(BLUP, na.rm = T))
    
    XS_BLUPS <- selection_parents |>
      filter(Trait == j &
               ID_Clone %in% Clones_BLUPS_sel$ID_Clone) |>
      select(BLUP) |>
      summarise(X0 = mean(BLUP, na.rm = T))
    
    Clones_sel_GEBVS <- sel_parents %>%
      arrange(ifelse(Weights == "acrescimo", desc(GEBV), GEBV)) |>
      slice(1:(nlevels(ID_Clone) * (i / 100))) |>
      #filter(ID_Clone %in% Clones_GEBV_sel$ID_Clone) %>%
      droplevels()
    
    all(Clones_sel_BLUPS$ID_Clone %in% Clones_sel_GEBVS$ID_Clone)
    
    X0_GEBV <- selection_parents |>
      filter(Trait == j) |>
      select(GEBV) |>
      summarise(X0 = mean(GEBV, na.rm = T))
    
    XS_GEBV <- selection_parents |>
      filter(Trait == j &
               ID_Clone %in% Clones_GEBV_sel$ID_Clone) |>
      select(GEBV) |>
      summarise(X0 = mean(GEBV, na.rm = T))
    
    Clones_sel_GETGV <- sel_parents %>%
      arrange(ifelse(Weights == "acrescimo", desc(GETGV), GETGV)) |>
      slice(1:(nlevels(ID_Clone) * (i / 100))) |>
      #filter(ID_Clone %in% Clones_GETGV_sel$ID_Clone) %>%
      droplevels()
    
    X0_GETGV <- selection_parents |>
      filter(Trait == j) |>
      select(GETGV) |>
      summarise(X0 = mean(GETGV, na.rm = T))
    
    XS_GETGV <- selection_parents |>
      filter(Trait == j &
               ID_Clone %in% Clones_GETGV_sel$ID_Clone) |>
      select(GETGV) |>
      summarise(X0 = mean(GETGV, na.rm = T))
    
    Comb_sel_GEBV_BLUP <-
      Clones_sel_GEBVS |>
      #slice(1:(nlevels(ID_Clone)/2)) |>
      full_join(Clones_sel_BLUPS) |>
      #slice(1:(nlevels(ID_Clone)/2))) %>%
      resca(BLUP, GEBV, GETGV, new_min = 0, new_max = 1) %>%
      mutate(BLUP_GEBV = (BLUP_res + GEBV_res) / 2) |>
      arrange(desc(BLUP_GEBV)) %>%
      slice(1:nrow(Clones_sel_BLUPS)) |>
      droplevels()
    
    XS_comb_GEBV_BLUP <- selection_parents |>
      filter(Trait == j &
               ID_Clone %in% Comb_sel_GEBV_BLUP$ID_Clone) |>
      select(GEBV) |>
      summarise(X0 = mean(GEBV, na.rm = T))
    
    Comb_sel_GETGV_BLUP <-
      Clones_sel_GETGV |>
      #slice(1:(nlevels(ID_Clone)/2)) |>
      full_join(Clones_sel_BLUPS) |>
      #slice(1:(nlevels(ID_Clone)/2))) %>%
      resca(BLUP, GEBV, GETGV, new_min = 0, new_max = 1) %>%
      mutate(BLUP_GETGV = (BLUP_res + GETGV_res) / 2) |>
      arrange(desc(BLUP_GETGV)) %>%
      slice(1:nrow(Clones_sel_GEBVS)) |>
      droplevels()
    
    XS_comb_GETGV_BLUP <- selection_parents |>
      filter(Trait == j &
               ID_Clone %in% Comb_sel_GETGV_BLUP$ID_Clone) |>
      select(GETGV) |>
      summarise(X0 = mean(GETGV, na.rm = T))
    
    Comb_sel_GETGV_GEBV <-
      Clones_sel_GETGV |>
      #slice(1:(nlevels(ID_Clone)/2)) |>
      full_join(Clones_sel_GEBVS) |>
      #slice(1:(nlevels(ID_Clone)/2))) %>%
      resca(BLUP, GEBV, GETGV, new_min = 0, new_max = 1) %>%
      mutate(GETGV_GEBV = (GETGV_res + GEBV_res) / 2) |>
      arrange(desc(GETGV_GEBV)) %>%
      slice(1:nrow(Clones_sel_BLUPS)) |>
      droplevels()
    
    XS_comb_GETGV_GEBV <- selection_parents |>
      filter(Trait == j &
               ID_Clone %in% Comb_sel_GETGV_GEBV$ID_Clone) |>
      select(GETGV) |>
      summarise(X0 = mean(GETGV, na.rm = T))
    
    Clones_sel <- BLUP |>
      select(ID_Clone) |>
      mutate(
        BLUPS_sel = ifelse(ID_Clone %in% Clones_sel_BLUPS$ID_Clone,1, 0),
        GEBVS_sel = ifelse(ID_Clone %in% Clones_sel_GEBVS$ID_Clone, 1, 0),
        GETGV_sel = ifelse(ID_Clone %in% Clones_sel_GETGV$ID_Clone, 1, 0),
        Comb_sel_GEBV_BLUP = ifelse(ID_Clone %in% Comb_sel_GEBV_BLUP$ID_Clone, 1, 0),
        Comb_sel_GETGV_BLUP = ifelse(ID_Clone %in% Comb_sel_GETGV_BLUP$ID_Clone, 1, 0),
        Comb_sel_GETGV_GEBV = ifelse(ID_Clone %in% Comb_sel_GETGV_GEBV$ID_Clone, 1, 0),
      )
    
    kappa_GEBV_BLUP =  cohen.kappa(cbind(Clones_sel$BLUPS_sel, Clones_sel$GEBVS_sel))[["kappa"]]
    
    kappa_GETGV_BLUP =  cohen.kappa(cbind(Clones_sel$BLUPS_sel, Clones_sel$GETGV_sel))[["kappa"]]
    
    kappa_GETGV_GEBV =  cohen.kappa(cbind(Clones_sel$GEBVS_sel, Clones_sel$GETGV_sel))[["kappa"]]
    
    kappa_sel_GEBV_BLUP_BLUP =  cohen.kappa(cbind(Clones_sel$BLUPS_sel, Clones_sel$Comb_sel_GEBV_BLUP))[["kappa"]]
    
    kappa_sel_GETGV_BLUP_BLUP =  cohen.kappa(cbind(Clones_sel$BLUPS_sel, Clones_sel$Comb_sel_GETGV_BLUP))[["kappa"]]
    
    kappa_sel_GETGV_GEBV_BLUP =  cohen.kappa(cbind(Clones_sel$BLUPS_sel, Clones_sel$Comb_sel_GETGV_GEBV))[["kappa"]]
    
    kappa_sel_GEBV_BLUP_GEBV =  cohen.kappa(cbind(Clones_sel$GEBVS_sel, Clones_sel$Comb_sel_GEBV_BLUP))[["kappa"]]
    
    kappa_sel_GETGV_BLUP_GEBV =  cohen.kappa(cbind(Clones_sel$GEBVS_sel, Clones_sel$Comb_sel_GETGV_BLUP))[["kappa"]]
    
    kappa_sel_GETGV_GEBV_GEBV =  cohen.kappa(cbind(Clones_sel$GEBVS_sel, Clones_sel$Comb_sel_GETGV_GEBV))[["kappa"]]
    
    kappa_sel_GEBV_BLUP_GETGV =  cohen.kappa(cbind(Clones_sel$GETGV_sel, Clones_sel$Comb_sel_GEBV_BLUP))[["kappa"]]
    
    kappa_sel_GETGV_BLUP_GETGV =  cohen.kappa(cbind(Clones_sel$GETGV_sel, Clones_sel$Comb_sel_GETGV_BLUP))[["kappa"]]
    
    kappa_sel_GETGV_GEBV_GETGV =  cohen.kappa(cbind(Clones_sel$GETGV_sel, Clones_sel$Comb_sel_GETGV_GEBV))[["kappa"]]
    
    coef_kappa <- data.frame(
      Trait = j,
      SI = i,
      X0 = media_pheno[[j]],
      X0_GEBV = X0_GEBV[[1]],
      X0_GETGV = X0_GETGV[[1]],
      X0_BLUPS = X0_BLUPS[[1]],
      XS_BLUPS = XS_BLUPS[[1]],
      XS_GEBV = XS_GEBV[[1]],
      XS_GETGV = XS_GETGV[[1]],
      XS_GEBV_BLUP = XS_comb_GEBV_BLUP[[1]],
      XS_GETGV_BLUP = XS_comb_GETGV_BLUP[[1]],
      XS_GETGV_GEBV = XS_comb_GETGV_GEBV[[1]],
      kappa_GEBV_BLUP = kappa_GEBV_BLUP,
      kappa_GETGV_BLUP = kappa_GETGV_BLUP,
      kappa_GETGV_GEBV = kappa_GETGV_GEBV,
      kappa_sel_GEBV_BLUP_BLUP = kappa_sel_GEBV_BLUP_BLUP,
      kappa_sel_GETGV_BLUP_BLUP = kappa_sel_GETGV_BLUP_BLUP,
      kappa_sel_GETGV_GEBV_BLUP = kappa_sel_GETGV_GEBV_BLUP,
      kappa_sel_GEBV_BLUP_GEBV = kappa_sel_GEBV_BLUP_GEBV,
      kappa_sel_GETGV_BLUP_GEBV = kappa_sel_GETGV_BLUP_GEBV,
      kappa_sel_GETGV_GEBV_GEBV = kappa_sel_GETGV_GEBV_GEBV,
      kappa_sel_GEBV_BLUP_GETGV = kappa_sel_GEBV_BLUP_GETGV,
      kappa_sel_GETGV_BLUP_GETGV = kappa_sel_GETGV_BLUP_GETGV,
      kappa_sel_GETGV_GEBV_GETGV = kappa_sel_GETGV_GEBV_GETGV
    )
    
    results_kappa <- rbind(results_kappa, coef_kappa)
  }
}
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`
Joining with `by = join_by(ID_Clone, Trait, Bayes.A, Bayes.B, GEBV, GETGV, RF,
RKHS, RR.BLUP, BLUP, Weights)`

Figure 3 Cohen’s Kappa of coincidence

results_kappa |>
  pivot_longer(names_to = "Comparation",
               values_to = "Kappa",
               cols = 13:18) %>%
  ggplot(aes(x = Trait, y = SI, fill = Kappa)) +
  geom_tile() +
  facet_wrap(Comparation ~ .,
             labeller = as_labeller(
               c(
                 kappa_GEBV_BLUP = "GEBV x BLUP",
                 kappa_GETGV_BLUP = "GETGV x BLUP",
                 kappa_GETGV_GEBV = "GEBV x GETGV",
                 kappa_sel_GEBV_BLUP_BLUP = "GEBV_BLUP x BLUP",
                 kappa_sel_GETGV_BLUP_BLUP = "GETGV_BLUP x BLUP",
                 kappa_sel_GETGV_GEBV_BLUP = "GETGV_GEBV x BLUP"
               )
             ), ncol = 2) +
  scale_fill_viridis(discrete = FALSE, limits = c(-0.07, 1)) +
  labs(x = "" , y = "Selection Index", fill = "Kappa") +
  theme(
    text = element_text(size = 20),
    legend.key.width = unit(1.5, 'cm'),
    legend.box = "horizontal",
    legend.position = "top",
    legend.background =  element_blank(),
    strip.background = element_blank(),
    panel.background = element_blank(),
    plot.background = element_blank(),
    axis.text.x = element_text(
      angle = 45,
      hjust = 1,
      vjust = 1
    )
  )

Figure 4: Selection gains

teste <-  results_kappa %>%
  select(Trait, SI, X0, XS_GEBV, XS_GETGV)

p <- list()

for (i in levels(factor(teste$Trait))) {
  breaks <- teste %>%
    filter(Trait == i) %>%
    droplevels() %>%
    group_by(Trait) %>%
    summarise(
      min_X0 = min(X0),
      max_XS = max(c(XS_GEBV, XS_GETGV)),
      mean_X0_XS = mean(c(min_X0, max_XS))
    ) %>%
    round_cols()
  
  p[[i]] <- teste %>%
    filter(Trait == i) %>%
    droplevels() %>%
    ggplot(aes(y = SI,
               x = start)) +
    geom_segment(
      aes(
        x = X0,
        xend = XS_GEBV,
        y = SI,
        yend = SI
      ),
      linewidth = 1,
      color = "gray80"
    ) +
    geom_point(
      data = teste %>%
        filter(Trait == i) %>%
        droplevels() %>%
        pivot_longer(
          names_to = "measure",
          values_to = "value",
          cols = c("X0", "XS_GEBV", "XS_GETGV")
        ),
      aes(y = SI,
          x = value,
          color = measure),
      size = 4,
      alpha = 0.75
    )  +
    scale_x_continuous(
      limits = ~ c(min(.x), max(.x)),
      breaks = c(breaks$min_X0, breaks$mean_X0_XS, breaks$max_XS),
      expand = expansion(mult = ifelse(i == "Plant.Height" , 0.25, 0.15))
    ) +
    scale_color_gdocs() +
    labs(x = i)  +
    theme(
      text = element_text(size = 15),
      legend.text = element_text(size = 15),
      legend.box = "horizontal",
      legend.direction = "horizontal",
      legend.position = "top",
      panel.spacing = unit(2, "lines"),
      legend.title = element_blank(),
      panel.background = element_blank(),
      panel.border = element_blank(),
      plot.background = element_blank(),
      legend.background = element_blank(),
      legend.box.background = element_blank(),
      legend.key = element_blank()
    )
}

annotate_figure(
  ggarrange(
    plotlist = p,
    nrow = 3,
    ncol = 4,
    common.legend = TRUE),
  left = text_grob("Selection Index", rot = 90, size = 20)
)

Supplementary Table 3 - Cohen’s Kappa of coincidence

results_kappa |>
  select(1,2, starts_with("kappa")) %>% 
  kbl(escape = F, align = 'c') |>
  kable_classic("hover", full_width = F, position = "center", fixed_thead = T)
Trait SI kappa_GEBV_BLUP kappa_GETGV_BLUP kappa_GETGV_GEBV kappa_sel_GEBV_BLUP_BLUP kappa_sel_GETGV_BLUP_BLUP kappa_sel_GETGV_GEBV_BLUP kappa_sel_GEBV_BLUP_GEBV kappa_sel_GETGV_BLUP_GEBV kappa_sel_GETGV_GEBV_GEBV kappa_sel_GEBV_BLUP_GETGV kappa_sel_GETGV_BLUP_GETGV kappa_sel_GETGV_GEBV_GETGV
N_Roots 10 0.0593333 0.0593333 0.8063333 0.5850000 0.6956667 0.0870000 0.4743333 0.3360000 0.9170000 0.3913333 0.3636667 0.8893333
N_Roots 15 0.0453052 0.0647887 0.8051643 0.6298122 0.6103286 0.0842723 0.4154930 0.3960094 0.8830986 0.3765258 0.4544601 0.9025822
N_Roots 20 0.0796185 0.0642788 0.8005840 0.5858283 0.5704887 0.0642788 0.4937902 0.4784505 0.9233015 0.4017521 0.4937902 0.8772825
N_Roots 25 0.0709151 0.1101722 0.8560573 0.5681718 0.5812575 0.0840008 0.5027433 0.4634862 0.9345715 0.5027433 0.5289147 0.9214858
N_Roots 30 0.0784000 0.1133974 0.8250126 0.5566987 0.5800304 0.0784000 0.5217012 0.4750379 0.9066734 0.5450329 0.5333671 0.9183392
FRY 10 0.0593333 0.0870000 0.8893333 0.5850000 0.7233333 0.0870000 0.4743333 0.3360000 0.9446667 0.5020000 0.3636667 0.9446667
FRY 15 0.2312679 0.1736130 0.8270353 0.6348523 0.6925072 0.2120496 0.5964157 0.5195425 0.9231268 0.5387608 0.4811059 0.9039085
FRY 20 0.2176758 0.2023361 0.8772825 0.6011680 0.6471871 0.2330155 0.6165077 0.5704887 0.9693206 0.6011680 0.5551490 0.9079619
FRY 25 0.1886864 0.1756007 0.8691430 0.5943432 0.6466860 0.1886864 0.5943432 0.5420004 0.9345715 0.5681718 0.5289147 0.9345715
FRY 30 0.2801992 0.2453701 0.8490740 0.6400996 0.6865384 0.2685895 0.6400996 0.5820511 0.9419515 0.6052705 0.5588318 0.9071225
ShY 10 -0.0284335 -0.0013695 0.8376158 0.5940394 0.5940394 -0.0284335 0.3775271 0.3504630 0.9458719 0.2963349 0.4045911 0.8917438
ShY 15 0.0198666 0.0967398 0.8078170 0.5579791 0.5579791 0.0198666 0.4618876 0.4234510 0.9039085 0.4811059 0.5387608 0.9039085
ShY 20 0.1337069 0.1793013 0.8784150 0.5136600 0.4984619 0.1641031 0.6200469 0.6352450 0.9088113 0.6352450 0.6808394 0.9696038
ShY 25 0.2251680 0.2380819 0.8579475 0.5480147 0.5092731 0.2380819 0.6771533 0.7029811 0.9483445 0.6771533 0.7288088 0.9096029
ShY 30 0.2951609 0.2258325 0.8844526 0.5378104 0.5262557 0.2489420 0.7573505 0.7342410 0.9537810 0.6880221 0.6995768 0.9306716
DMC 10 0.0238575 0.0238575 1.0000000 0.5467910 0.5467910 0.0238575 0.4770665 0.4770665 1.0000000 0.4770665 0.4770665 1.0000000
DMC 15 0.0953812 0.0953812 1.0000000 0.5110168 0.5110168 0.0953812 0.5843643 0.5843643 1.0000000 0.5843643 0.5843643 1.0000000
DMC 20 0.1467148 0.1467148 1.0000000 0.5259527 0.5259527 0.1467148 0.6207621 0.6207621 1.0000000 0.6207621 0.6207621 1.0000000
DMC 25 0.1389380 0.1389380 1.0000000 0.5375778 0.5375778 0.1389380 0.6013602 0.6013602 1.0000000 0.6013602 0.6013602 1.0000000
DMC 30 0.1130702 0.1130702 1.0000000 0.5288185 0.5288185 0.1130702 0.5842517 0.5842517 1.0000000 0.5842517 0.5842517 1.0000000
StY 10 -0.0060606 -0.0060606 0.8562771 0.6047619 0.5688312 -0.0060606 0.3891775 0.4251082 0.9281385 0.3891775 0.4251082 0.9281385
StY 15 0.1198303 0.1198303 0.9022034 0.6088135 0.6332626 0.1442795 0.5110168 0.4865677 0.9266525 0.5110168 0.4865677 0.9755508
StY 20 0.1928313 0.1736130 0.8654719 0.6156340 0.6348523 0.1543947 0.5771974 0.5579791 0.9423451 0.5579791 0.5387608 0.9231268
StY 25 0.2824483 0.2346115 0.9043264 0.7129793 0.7448705 0.2665027 0.5694690 0.5375778 0.9681088 0.5216322 0.4897410 0.9202720
StY 30 0.2737919 0.2737919 0.9022412 0.6927581 0.7067237 0.3017230 0.5810338 0.5670682 0.9581034 0.5810338 0.5670682 0.9441378
Plant.Height 10 0.1610147 0.1610147 0.9188079 0.5399113 0.5940394 0.1610147 0.6211034 0.5399113 0.9729360 0.5669753 0.5669753 0.9458719
Plant.Height 15 0.2120496 0.1736130 0.8654719 0.5195425 0.5964157 0.2120496 0.6925072 0.5579791 0.9615634 0.6156340 0.5771974 0.9039085
Plant.Height 20 0.2552919 0.2400938 0.8784150 0.5744525 0.6352450 0.2552919 0.6808394 0.6200469 0.9240094 0.6504431 0.6048488 0.9544056
Plant.Height 25 0.2768235 0.2509958 0.8966891 0.5738424 0.5867563 0.2509958 0.7029811 0.6900672 0.9612584 0.6642395 0.6642395 0.9354307
Plant.Height 30 0.3067157 0.2720515 0.8728979 0.6302484 0.6186936 0.2720515 0.6764673 0.6649126 0.9306716 0.6302484 0.6533578 0.9422263
HI 10 -0.0513333 -0.0236667 0.8063333 0.4466667 0.4466667 -0.0236667 0.5020000 0.4743333 0.8893333 0.4743333 0.5296667 0.9170000
HI 15 0.0775215 0.0583032 0.8654719 0.5003242 0.5003242 0.0583032 0.5771974 0.5579791 0.9231268 0.5387608 0.5579791 0.9423451
HI 20 0.1256376 0.1409773 0.9233015 0.5091299 0.5244696 0.1256376 0.6165077 0.5858283 0.9693206 0.6318474 0.6165077 0.9539809
HI 25 0.1363436 0.1363436 0.8953144 0.5289147 0.5420004 0.1363436 0.6074289 0.5812575 0.9476572 0.5943432 0.5943432 0.9476572
HI 30 0.1524926 0.1989313 0.9071225 0.5588318 0.5472221 0.1641023 0.5936608 0.5936608 0.9535612 0.6168802 0.6517093 0.9535612
StC 10 0.0238575 0.0238575 1.0000000 0.5119288 0.5119288 0.0238575 0.5119288 0.5119288 1.0000000 0.5119288 0.5119288 1.0000000
StC 15 0.0709320 0.0709320 1.0000000 0.4865677 0.4865677 0.0709320 0.5843643 0.5843643 1.0000000 0.5843643 0.5843643 1.0000000
StC 20 0.1467148 0.1467148 1.0000000 0.5259527 0.5259527 0.1467148 0.6207621 0.6207621 1.0000000 0.6207621 0.6207621 1.0000000
StC 25 0.1389380 0.1389380 1.0000000 0.5375778 0.5375778 0.1389380 0.6013602 0.6013602 1.0000000 0.6013602 0.6013602 1.0000000
StC 30 0.1269285 0.1269285 1.0000000 0.5426768 0.5426768 0.1269285 0.5842517 0.5842517 1.0000000 0.5842517 0.5842517 1.0000000
Root.Le 10 0.1423333 0.1423333 0.8616667 0.5573333 0.5850000 0.1146667 0.5850000 0.4743333 0.9170000 0.5296667 0.5573333 0.9446667
Root.Le 15 0.2791080 0.2401408 0.8441315 0.5323944 0.5323944 0.2596244 0.7467136 0.7077465 0.9415493 0.7077465 0.7077465 0.9025822
Root.Le 20 0.3250536 0.3403933 0.8466031 0.5244696 0.5704887 0.3250536 0.8005840 0.7238856 0.9386412 0.7852443 0.7699046 0.9079619
Root.Le 25 0.3326291 0.3326291 0.8822287 0.5420004 0.5812575 0.3326291 0.7906287 0.7513716 0.9476572 0.7644573 0.7513716 0.9345715
Root.Le 30 0.3583797 0.3117164 0.8600101 0.5916962 0.6266937 0.3467139 0.7666835 0.6850228 0.9533367 0.6966886 0.6850228 0.8950076
Root.Di 10 0.1146667 0.1146667 1.0000000 0.5296667 0.5296667 0.1146667 0.5850000 0.5850000 1.0000000 0.5850000 0.5850000 1.0000000
Root.Di 15 0.1427230 0.1037559 0.9610329 0.5518779 0.5518779 0.1232394 0.5908451 0.5908451 0.9805164 0.5518779 0.5518779 0.9805164
Root.Di 20 0.2330155 0.2483551 0.9539809 0.5398093 0.5551490 0.2330155 0.6932062 0.6625268 0.9846603 0.6932062 0.6932062 0.9693206
Root.Di 25 0.2672006 0.2802863 0.9607429 0.5943432 0.5812575 0.2802863 0.6728574 0.6859431 0.9738286 0.6859431 0.6990288 0.9869143
Root.Di 30 0.2650531 0.2650531 0.9766684 0.5916962 0.5800304 0.2650531 0.6733569 0.6850228 1.0000000 0.6733569 0.6850228 0.9766684
Stem.D 10 0.1610147 0.0798226 0.7564236 0.6481675 0.5669753 0.1339507 0.5128473 0.5399113 0.8646798 0.3775271 0.5128473 0.8917438
Stem.D 15 0.2036005 0.1656767 0.8483049 0.6207621 0.6018002 0.2036005 0.5828383 0.5828383 0.9241524 0.5069908 0.5638765 0.9241524
Stem.D 20 0.2704900 0.2248956 0.8024244 0.6200469 0.6352450 0.2704900 0.6504431 0.6200469 0.9240094 0.5744525 0.5896506 0.8784150
Stem.D 25 0.3026512 0.2897374 0.8450336 0.7029811 0.7029811 0.3026512 0.5996702 0.5996702 0.9096029 0.5738424 0.5867563 0.9354307
Stem.D 30 0.2984425 0.2984425 0.8159849 0.7814821 0.7469793 0.3099435 0.5169604 0.5054595 0.9079925 0.5054595 0.5514633 0.9079925
Nstem.Plant 10 0.0238575 0.0238575 1.0000000 0.4422043 0.4770665 0.0238575 0.5816532 0.5467910 1.0000000 0.5816532 0.5467910 1.0000000
Nstem.Plant 15 0.1362165 0.1122225 0.9520120 0.4721323 0.4961263 0.1362165 0.6640842 0.6400902 0.9760060 0.6400902 0.6160962 0.9760060
Nstem.Plant 20 0.1391595 0.1391595 0.8877165 0.5508658 0.5695797 0.1391595 0.5882937 0.5695797 0.9251443 0.5695797 0.5695797 0.9625722
Nstem.Plant 25 0.2495479 0.2339135 0.9687312 0.5778707 0.6247740 0.2495479 0.6716772 0.6247740 1.0000000 0.6404084 0.6091395 0.9687312
Nstem.Plant 30 0.2901316 0.2628289 0.9590461 0.5495066 0.5768092 0.2764803 0.7406250 0.7133224 0.9863487 0.7133224 0.6860197 0.9726974

Supplementary Table 4 - Diferential selection

diferencial_selection <- results_kappa %>%
  mutate(DS_GEBV = ((XS_GEBV - X0) / X0)*100,
         DS_GETGV = ((XS_GETGV - X0) / X0)*100) %>%
  select(1:3, XS_GEBV, XS_GETGV, DS_GEBV, DS_GETGV)  

diferencial_selection %>%
  kbl(escape = F, align = 'c') |>
  kable_classic(
    "hover",
    full_width = F,
    position = "center",
    fixed_thead = T
  )
Trait SI X0 XS_GEBV XS_GETGV DS_GEBV DS_GETGV
N_Roots 10 4.292942 4.541419 4.557449 5.7880281 6.1614259
N_Roots 15 4.292942 4.503344 4.519741 4.9010983 5.2830616
N_Roots 20 4.292942 4.481755 4.497237 4.3982166 4.7588500
N_Roots 25 4.292942 4.464347 4.475947 3.9927102 4.2629092
N_Roots 30 4.292942 4.453953 4.468989 3.7505913 4.1008390
FRY 10 4.946156 5.621869 5.626471 13.6613850 13.7544159
FRY 15 4.946156 5.535921 5.513274 11.9236965 11.4658381
FRY 20 4.946156 5.456486 5.463552 10.3176999 10.4605750
FRY 25 4.946156 5.396319 5.394556 9.1012692 9.0656263
FRY 30 4.946156 5.344933 5.344045 8.0623704 8.0444023
ShY 10 14.227608 15.614549 15.668526 9.7482357 10.1276180
ShY 15 14.227608 15.396293 15.425476 8.2142027 8.4193181
ShY 20 14.227608 15.253308 15.221572 7.2092241 6.9861649
ShY 25 14.227608 15.193934 15.244274 6.7919073 7.1457241
ShY 30 14.227608 15.144660 15.202695 6.4455773 6.8534854
DMC 10 29.058253 29.629875 29.603745 1.9671586 1.8772381
DMC 15 29.058253 29.547617 29.581090 1.6840798 1.7992711
DMC 20 29.058253 29.460600 29.505979 1.3846225 1.5407891
DMC 25 29.058253 29.425355 29.434808 1.2633324 1.2958617
DMC 30 29.058253 29.388151 29.411355 1.1352988 1.2151511
StY 10 1.516377 1.679046 1.683829 10.7274852 11.0428979
StY 15 1.516377 1.646614 1.647351 8.5886986 8.6372579
StY 20 1.516377 1.636301 1.630397 7.9085461 7.5192118
StY 25 1.516377 1.623207 1.621700 7.0450695 6.9457224
StY 30 1.516377 1.615213 1.614606 6.5178949 6.4778388
Plant.Height 10 1.191888 1.218483 1.214519 2.2313010 1.8987484
Plant.Height 15 1.191888 1.210971 1.209804 1.6010244 1.5031639
Plant.Height 20 1.191888 1.206531 1.205358 1.2285295 1.1300874
Plant.Height 25 1.191888 1.204783 1.204905 1.0818354 1.0921086
Plant.Height 30 1.191888 1.203777 1.205768 0.9974479 1.1644728
HI 10 24.555931 25.967289 25.864255 5.7475261 5.3279358
HI 15 24.555931 25.748140 25.698310 4.8550771 4.6521506
HI 20 24.555931 25.607577 25.631202 4.2826563 4.3788664
HI 25 24.555931 25.451107 25.410918 3.6454574 3.4817930
HI 30 24.555931 25.306057 25.271414 3.0547635 2.9136891
StC 10 24.419548 25.003698 24.973808 2.3921413 2.2697371
StC 15 24.419548 24.917941 24.950143 2.0409587 2.1728304
StC 20 24.419548 24.829042 24.874099 1.6769121 1.8614220
StC 25 24.419548 24.793605 24.800732 1.5317909 1.5609773
StC 30 24.419548 24.755365 24.777394 1.3751977 1.4654074
Root.Le 10 23.214730 23.875648 23.829303 2.8469756 2.6473407
Root.Le 15 23.214730 23.755371 23.707679 2.3288690 2.1234319
Root.Le 20 23.214730 23.697609 23.642656 2.0800555 1.8433369
Root.Le 25 23.214730 23.633618 23.606921 1.8044044 1.6894068
Root.Le 30 23.214730 23.582253 23.606713 1.5831471 1.6885089
Root.Di 10 28.878541 29.679103 29.651571 2.7721691 2.6768318
Root.Di 15 28.878541 29.580579 29.578739 2.4310051 2.4246312
Root.Di 20 28.878541 29.506113 29.506605 2.1731426 2.1748497
Root.Di 25 28.878541 29.445294 29.426660 1.9625430 1.8980161
Root.Di 30 28.878541 29.371944 29.353524 1.7085465 1.6447608
Stem.D 10 2.112489 2.136110 2.135334 1.1181604 1.0814120
Stem.D 15 2.112489 2.132438 2.132330 0.9443425 0.9391971
Stem.D 20 2.112489 2.131034 2.128834 0.8778750 0.7737288
Stem.D 25 2.112489 2.129767 2.129634 0.8178633 0.8115949
Stem.D 30 2.112489 2.129346 2.129527 0.7979657 0.8065366
Nstem.Plant 10 2.130936 2.155840 2.159164 1.1686756 1.3246821
Nstem.Plant 15 2.130936 2.153327 2.155611 1.0507461 1.1579252
Nstem.Plant 20 2.130936 2.150895 2.151224 0.9366498 0.9520742
Nstem.Plant 25 2.130936 2.151740 2.150396 0.9762647 0.9132139
Nstem.Plant 30 2.130936 2.151629 2.149755 0.9710932 0.8831386

SNP-based heritability estimate

SNP-based heritability estimate

results_h2_GBLUP <- readRDS("output/results_cv_G_BLUP.RDS") %>%
  select(Trait, narrow_sense) %>% 
  group_by(Trait) %>%
  summarise(SNP_H2_narrow_sense = mean(narrow_sense))

results_h2_GBLUP %>%
  kbl(escape = F, align = 'c') |>
  kable_classic("hover", full_width = F, position = "center", fixed_thead = T)
Trait SNP_H2_narrow_sense
DMC 0.3806575
FRY 0.3658975
HI 0.2960106
N_Roots 0.1836692
Nstem.Plant 0.2799462
Plant.Height 0.2965907
Root.Di 0.2868806
Root.Le 0.3153513
ShY 0.3753985
StC 0.3793279
StY 0.4226721
Stem.D 0.4469456

Table 2 Broad-sense heritability and SNP-based heritability

H2 <- read.csv("output/H2_row_col_random.csv")
pheno_mean_sd <- read.csv("output/pheno_mean_sd.csv")

Broad_SNP_h2 <- H2 %>%
  rename(Trait = trait) %>% 
  full_join(results_h2_GBLUP) %>% 
  full_join(pheno_mean_sd %>%
              rename("Trait" = "variable")) %>%
  round_cols(digits = 2) %>%
  mutate(mean = str_c(mean, " (", min, " - ", max, ")")) %>%
  select(Trait, H2_Broad, H2_narrow, SNP_H2_narrow_sense, mean, cv)
Joining with `by = join_by(Trait)`
Joining with `by = join_by(Trait)`
Broad_SNP_h2 %>%
  kbl(escape = F, align = 'c') |>
  kable_classic(
    "hover",
    full_width = F,
    position = "center",
    fixed_thead = T
  )
Trait H2_Broad H2_narrow SNP_H2_narrow_sense mean cv
N_Roots 0.79 0.46 0.18 4.29 (0.12 - 15.67) 58.56
FRY 0.66 0.37 0.37 4.95 (0.12 - 22.2) 81.79
ShY 0.83 0.54 0.38 14.23 (0.69 - 61.17) 71.45
DMC 0.79 0.54 0.38 29.06 (11.98 - 48.34) 21.00
StY 0.51 0.27 0.42 1.52 (0.02 - 8.87) 84.01
Plant.Height 0.72 0.35 0.30 1.19 (0.36 - 3.03) 27.43
HI 0.67 0.40 0.30 24.56 (1.57 - 71.97) 48.42
StC 0.79 0.54 0.38 24.42 (7.33 - 43.69) 25.05
Root.Le 0.64 0.24 0.32 23.21 (7 - 47.33) 24.99
Root.Di 0.66 0.30 0.29 28.88 (6.12 - 63.3) 27.35
Stem.D 0.59 0.24 0.45 2.11 (1.01 - 4.37) 17.90
Nstem.Plant 0.47 0.22 0.28 2.13 (1 - 6.67) 44.53

sessionInfo()
R version 4.3.3 (2024-02-29 ucrt)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 19045)

Matrix products: default


locale:
[1] LC_COLLATE=Portuguese_Brazil.utf8  LC_CTYPE=Portuguese_Brazil.utf8   
[3] LC_MONETARY=Portuguese_Brazil.utf8 LC_NUMERIC=C                      
[5] LC_TIME=Portuguese_Brazil.utf8    

time zone: America/Sao_Paulo
tzcode source: internal

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] ggpubr_0.6.0      viridis_0.6.5     viridisLite_0.4.2 psych_2.4.12     
 [5] metan_1.19.0      ggthemes_5.1.0    kableExtra_1.4.0  lubridate_1.9.4  
 [9] forcats_1.0.0     stringr_1.5.1     dplyr_1.1.4       purrr_1.0.2      
[13] readr_2.1.5       tidyr_1.3.1       tibble_3.2.1      ggplot2_3.5.1    
[17] tidyverse_2.0.0  

loaded via a namespace (and not attached):
 [1] tidyselect_1.2.1    farver_2.1.2        fastmap_1.2.0      
 [4] GGally_2.2.1        tweenr_2.0.3        mathjaxr_1.6-0     
 [7] promises_1.3.2      digest_0.6.37       timechange_0.3.0   
[10] lifecycle_1.0.4     magrittr_2.0.3      compiler_4.3.3     
[13] rlang_1.1.4         sass_0.4.9          tools_4.3.3        
[16] yaml_2.3.10         ggsignif_0.6.4      knitr_1.49         
[19] labeling_0.4.3      mnormt_2.1.1        plyr_1.8.9         
[22] xml2_1.3.6          RColorBrewer_1.1-3  abind_1.4-8        
[25] workflowr_1.7.1     withr_3.0.2         numDeriv_2016.8-1.1
[28] grid_4.3.3          polyclip_1.10-7     git2r_0.35.0       
[31] colorspace_2.1-1    scales_1.3.0        MASS_7.3-60.0.1    
[34] cli_3.6.3           rmarkdown_2.29      ragg_1.3.3         
[37] reformulas_0.4.0    generics_0.1.3      rstudioapi_0.17.1  
[40] tzdb_0.4.0          minqa_1.2.8         cachem_1.1.0       
[43] ggforce_0.4.2       splines_4.3.3       parallel_4.3.3     
[46] vctrs_0.6.5         boot_1.3-31         Matrix_1.6-1       
[49] carData_3.0-5       jsonlite_1.8.9      car_3.1-3          
[52] hms_1.1.3           patchwork_1.3.0     rstatix_0.7.2      
[55] ggrepel_0.9.6       Formula_1.2-5       systemfonts_1.1.0  
[58] jquerylib_0.1.4     glue_1.8.0          nloptr_2.1.1       
[61] ggstats_0.8.0       cowplot_1.1.3       stringi_1.8.4      
[64] gtable_0.3.6        later_1.4.1         lme4_1.1-36        
[67] lmerTest_3.1-3      munsell_0.5.1       pillar_1.10.1      
[70] htmltools_0.5.8.1   R6_2.5.1            textshaping_0.4.1  
[73] Rdpack_2.6.2        rprojroot_2.0.4     evaluate_1.0.3     
[76] lattice_0.22-6      backports_1.5.0     rbibutils_2.3      
[79] broom_1.0.7         httpuv_1.6.15       bslib_0.8.0        
[82] Rcpp_1.0.14         svglite_2.1.3       gridExtra_2.3      
[85] nlme_3.1-166        xfun_0.50           fs_1.6.5           
[88] pkgconfig_2.0.3    

  1. Weverton Gomes da Costa, Pós-Doutorando, Embrapa Mandioca e Fruticultura, ↩︎