Skip to content

ammi_indexes is failing for computation of WAAS #4

Description

@aravind-j

ammi_indexes is failing for cases where there is only significant PC for computation of WAAS.

library(metan)

data <- 
  structure(list(Year = c("Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", 
                          "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", 
                          "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y2", "Y2", "Y2", "Y2", "Y2", 
                          "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", 
                          "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y1", "Y1", "Y1", 
                          "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", 
                          "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y1", "Y2", 
                          "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", 
                          "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", "Y2", 
                          "Y2"), 
                 Location = c("L1", "L1", "L1", "L1", "L1", "L1", "L1", 
                              "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", 
                              "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", 
                              "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", 
                              "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L1", "L2", "L2", "L2", 
                              "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", 
                              "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", 
                              "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", 
                              "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", "L2", 
                              "L2"), 
                 Environment = c("Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", 
                                 "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", 
                                 "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", 
                                 "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y1_L1", "Y2_L1", "Y2_L1", 
                                 "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", 
                                 "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", 
                                 "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", "Y2_L1", 
                                 "Y2_L1", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", 
                                 "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", 
                                 "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", 
                                 "Y1_L2", "Y1_L2", "Y1_L2", "Y1_L2", "Y2_L2", "Y2_L2", "Y2_L2", 
                                 "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", 
                                 "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", 
                                 "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2", "Y2_L2"
                 ), 
                 Rep = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 
                         2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 
                         1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
                         2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 
                         2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 1L, 
                         1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
                         2L, 2L, 2L), 
                 Block = c("1", "1", "1", "1", "2", "2", "2", "2", 
                           "3", "3", "3", "3", "1", "1", "1", "1", "2", "2", "2", "2", "3", 
                           "3", "3", "3", "1", "1", "1", "1", "2", "2", "2", "2", "3", "3", 
                           "3", "3", "1", "1", "1", "1", "2", "2", "2", "2", "3", "3", "3", 
                           "3", "1", "1", "1", "1", "2", "2", "2", "2", "3", "3", "3", "3", 
                           "1", "1", "1", "1", "2", "2", "2", "2", "3", "3", "3", "3", "1", 
                           "1", "1", "1", "2", "2", "2", "2", "3", "3", "3", "3", "1", "1", 
                           "1", "1", "2", "2", "2", "2", "3", "3", "3", "3"), 
                 Treatment = c("G08", 
                               "G09", "G01", "G10", "G02", "G04", "G05", "G12", "G07", "G11", 
                               "G03", "G06", "G09", "G03", "G06", "G05", "G07", "G11", "G01", 
                               "G02", "G04", "G08", "G10", "G12", "G07", "G10", "G05", "G12", 
                               "G11", "G04", "G03", "G06", "G02", "G01", "G09", "G08", "G01", 
                               "G04", "G09", "G12", "G02", "G07", "G03", "G10", "G11", "G05", 
                               "G06", "G08", "G06", "G02", "G03", "G11", "G05", "G08", "G09", 
                               "G07", "G10", "G12", "G01", "G04", "G02", "G07", "G08", "G12", 
                               "G01", "G05", "G09", "G10", "G06", "G04", "G11", "G03", "G05", 
                               "G12", "G11", "G10", "G03", "G01", "G06", "G09", "G08", "G07", 
                               "G04", "G02", "G09", "G05", "G10", "G01", "G08", "G06", "G04", 
                               "G12", "G11", "G07", "G02", "G03"), 
                 GrainYield = c(5.32, 5.09, 
                                4.56, 6.43, 5.4, 3.43, 5.56, 4.62, 4.15, 4.83, 4.18, 4.42, 4.5, 
                                3.65, 5.67, 5.12, 4.09, 6, 5.34, 4.76, 5.72, 5.7, 5.66, 5.55, 
                                5.62, 4.93, 5.2, 4.98, 4.97, 6.09, 4.82, 6.21, 3.76, 5.47, 5.1, 
                                5.17, 5.3, 4.6, 4.73, 4.19, 4.14, 5.24, 5.36, 5.04, 5.74, 6.64, 
                                4.61, 3.15, 4.82, 5.27, 5.88, 5.35, 4.74, 5.92, 5.79, 5.44, 5.19, 
                                4.5, 6.09, 4.52, 6.75, 6.23, 4.81, 4.18, 4.43, 5.21, 4.8, 4.72, 
                                4.24, 4.96, 4.37, 3.67, 5.09, 4.24, 4.61, 4.8, 6.48, 4.48, 5.19, 
                                5.06, 4.23, 4.94, 6.16, 5.36, 5.03, 4.66, 3.36, 5.91, 3.83, 5.59, 
                                6.53, 3.84, 5.56, 4.79, 3.74, 3.79)), 
            row.names = c(NA, -96L), class = "data.frame")


ammi_model <-
  performs_ammi(data,
                env = Environment,
                gen = Treatment,
                rep = Rep,
                block = Block, 
                resp = GrainYield)
#> variable GrainYield 
#> ---------------------------------------------------------------------------
#> AMMI analysis table
#> ---------------------------------------------------------------------------
#>          Source  Df Sum Sq Mean Sq F value Pr(>F) Proportion Accumulated
#>             ENV   3  0.507   0.169   0.237  0.870         NA          NA
#>        REP(ENV)   4  2.897   0.724   1.015  0.417         NA          NA
#>  BLOCK(REP*ENV)  16  4.592   0.287   0.402  0.970         NA          NA
#>             GEN  11  4.805   0.437   0.612  0.803         NA          NA
#>         GEN:ENV  33 25.078   0.760   1.065  0.436         NA          NA
#>             PC1  13 14.794   1.138   1.590  0.148       59.0        59.0
#>             PC2  11  7.460   0.678   0.950  0.510       29.7        88.7
#>             PC3   9  2.825   0.314   0.440  0.901       11.3       100.0
#>       Residuals  28 19.981   0.714      NA     NA         NA          NA
#>           Total 128 82.937   0.648      NA     NA         NA          NA
#> ---------------------------------------------------------------------------
#> 
#> ------------------------------------------------------------
#> Variables with nonsignificant GxE interaction
#> GrainYield 
#> ------------------------------------------------------------
#> Done!

waas_model <-
  waas(data,
       env = Environment,
       gen = Treatment,
       rep = Rep,
       block = Block, 
       resp = GrainYield)
#> variable GrainYield 
#> ---------------------------------------------------------------------------
#> AMMI analysis table
#> ---------------------------------------------------------------------------
#>          Source  Df Sum Sq Mean Sq F value Pr(>F) Proportion Accumulated
#>             ENV   3  0.507   0.169   0.237  0.870         NA          NA
#>        REP(ENV)   4  2.897   0.724   1.015  0.417         NA          NA
#>  BLOCK(REP*ENV)  16  4.592   0.287   0.402  0.970         NA          NA
#>             GEN  11  4.805   0.437   0.612  0.803         NA          NA
#>         GEN:ENV  33 25.078   0.760   1.065  0.436         NA          NA
#>             PC1  13 14.794   1.138   1.590  0.148       59.0        59.0
#>             PC2  11  7.460   0.678   0.950  0.510       29.7        88.7
#>             PC3   9  2.825   0.314   0.440  0.901       11.3       100.0
#>       Residuals  28 19.981   0.714      NA     NA         NA          NA
#>           Total 128 82.937   0.648      NA     NA         NA          NA
#> ---------------------------------------------------------------------------
#> 
#> ------------------------------------------------------------
#> Variables with nonsignificant GxE interaction
#> GrainYield 
#> ------------------------------------------------------------
#> Done!

model_indexes_ammi <- ammi_indexes(ammi_model)
#> Error in `weighted.mean.default()`:
#> ! 'x' and 'w' must have the same length

model_indexes_waas <- ammi_indexes(waas_model)
#> Error in `weighted.mean.default()`:
#> ! 'x' and 'w' must have the same length

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions