Skip to contents

metan 1.18.0

CRAN release: 2023-03-05

New features

  • New functions *_wd_here() to set and get the Working Directory (wd) quicky.
    • get_wd_here() gets the working directory to the path of the current script.
    • set_wd_here() sets the working directory to the path of the current script.
    • open_wd_here() open the File Explorer at the directory path of the current script.
    • open_wd() open the File Explorer at the current working directory.
  • corr_coef() now can compute both linear and partial correlation, controled by the argument type.
  • New function network_plot() to produce a network plot of a correlation matrix or an object computed with corr_coef().
  • New functions sample_random() and sample_systematic() for random and systematic sampling, respectively.

Minor improvements

  • plot.waasb() now has new arguments to control whether to show the percentage values within bars and the order of variables on the x-axis.
  • corr_coef() now handles grouped data passed from group_by()
  • New arguments size.varnames and col.varnames added in corr_plot().
  • Fix bug in gmd(mod, "h2"), when mod is computed with random = "env".
  • Include the argument repel in plot.gge().

metan 1.17.0

CRAN release: 2022-06-10

New features

  • Implement a plot method for path_coeff_*() functions.
  • New function path_coeff_seq() to implement a sequential (two chains) path analysis.
  • New function prop_na() to measure the proportion of NAs in each column.
  • New functions remove_cols_all_na() and remove_rows_all_na() to remove columns and rows that have all values as NAs.
  • New functions ci_mean_z() and ci_mean_t() to compute z- and t-confidence intervals, respectively.
  • New function set_wd_here() to set the working directory to the path of the current script.

Minor improvements

  • Fix bug in rowname_to_column().
  • Fix bug in mps() where stab was being rewritten with stab_res.
  • Changes the object name in mgidi() example that overwrites the function.
  • Fix bug with x.lab and y.lab from plot_scores(). Now it accepts an object from expression()
  • plot_waasby() now accepts objects of class waas_means.
  • get_model_data() now includes new options coefs, and anova for objects computed with ge_reg().
  • New argument max_overlaps in plot_scores() to exclude text labels that overlap too many things.
  • Improve the control over highlighted individuals in plot_scores() (shape, alpha, color, and size).

metan 1.16.0

CRAN release: 2021-11-10

New features

Minor improvements

metan 1.15.0

CRAN release: 2021-07-15

  • Fix bug when calling gmd(., "data")
  • Fix bug with fai_blup() when genotypes has distance as 0.
  • Fix bug in inspect() when some trait has character values.
  • Fix bug in gmd(model, "blupge")

metan 1.14.0

CRAN release: 2021-06-07

Minor improvements

  • Fix bug in get_model_data() calling objects of class mgidi with what = "PCA".
  • Fix bug in path_coeff() when generating sequences of direct effects depending on the constant added to the diagonal of correlation matrix.
  • Improve output of gmd() for gge objects.
  • New option projection in gmd() for gge objects to get the projection of each genotype in the AEC coordinates.
  • Fix bug when using mtsi() with an object of class waas.

metan 1.13.0

CRAN release: 2021-03-27

New functions

Minor improvements

  • ge_reg() now returns hypotesis testing for slope and deviations from the regression. Thanks to @LeonardoBehring and @MichelSouza for the suggestion.
  • Resende_indexes() now remove NAs before computing harmonic and arithmetic means.
  • Improved outputs in plot_scores that now has a highlight argument to highlight genotypes or environments by hand. Thanks to Ibrahim Elbasyoni for his suggestions.
  • Licecycle badges added to the functions’ documentation.
  • Fix bug in clustering() when using with by argument and defacult nclust argument.
  • get_model_data() now extract BLUEs from objects computed with gamem() and gamem_met(). Thanks to @MdFarhad for suggesting me this improvement.
  • g_simula() and ge_simula() now have a res_eff to control the residual effect.
  • mgidi() now have an optional weights argument to assign different weights for each trait in the selection process. Thanks to @MichelSouza for his suggestion.

metan 1.12.0

CRAN release: 2021-01-27

New functions

Minor improvements

  • New argument sel.var() in corr_ci() to filter correlations with a selected variable
  • New arguments fill and position.fill in plot_ci() to fill correlations by levels of a factor variable.
  • Remove deprecated arguments in arrange_ggplot() and gge().
  • New argument theme in arrange_ggplot() to control the theme of the plot.
  • Include by argument in gafem().
  • mgid() now understands models of class gafem_grouped.
  • Fix bug in get_levels() to get the levels even if the variable is not a factor.

metan 1.11.0

CRAN release: 2020-12-12

New functions

Minor improvements

  • gge() now have a by argument and understand data passed from group_by.
  • New arguments col.stroke and size.stroke in plot.gge()
  • gtb and gytb now produces biplots with lines for genotype’s vectors in type = 1.
  • get_model_data() now understand objects of class fai_blup and sh.

metan 1.10.0

CRAN release: 2020-10-24

New functions

Minor improvements

metan 1.9.0

CRAN release: 2020-09-18

  • New functions add_prefix() and add_suffix() to add prefixes and suffixes to variable names, respectively.
  • New function select_pred() to selects a best subset of predictor variables.
  • New function acv() to compute the adjusted coefficient of variation to account for the systematic dependence of σ2 from μ.
  • New function ge_acv() to compute yield stability index based on the adjusted coefficient of variation.
  • New function ge_polar() to compute yield stability index based on Power Law Residuals (POLAR) statistics.
  • New function mantel_test() to performs a Mantel test between two matrices.
  • New arguments prefix and suffix in concatenate() to add prefixes and suffixes to concatenated values, respectively.
  • List packages providing the Rd macros in ‘Imports’ instead of ‘Suggests’ as suggested by the CRAN team.

metan 1.8.1

CRAN release: 2020-09-10

  • Use \doi{} markup in Rd files.

metan 1.8.0

metan 1.7.0

CRAN release: 2020-07-18

  • New functions clip_read() and clip_write() to read from the clipboard and write to the clipboard, respectively.
  • New function sum_by() to compute the sum by levels of factors.
  • Update wsmp.R (#7). Thank you @BartoszKozak for your contribution.
  • mgidi() now allows using a fixed-effect model fitted with gafem() as input data.
  • round_cols() now can be used to round whole matrices.

metan 1.6.1

CRAN release: 2020-06-07

  • plot.mgidi() can now plot the contribution for all genotypes.
  • plot_bars() and plot_factbars() now shows the values with values = TRUE
  • Update the functions by using the new dplyr::across()
  • Update citation field by including number and version of the published paper.

metan 1.6.0

CRAN release: 2020-05-21

New functions

Minor improvements

  • get_model_data() now extracts the genotypic and phenotypic variance-covariance matrix from objects of class gamem and waasb.
  • fai_blup() now returns the total genetic gain and the list with the ideotypes’ construction.
  • mgidi() now computes the genetic gain when a mixed-model is used as input data.
  • The S3 method plot() for objects of class mgidi has a new argument type = "contribution" to plot the contribution of each factor in the MGIDI index.
  • plot_scores() now can produce a biplot showing other axes besides PC1 and PC2. To change the default IPCA in each axis use the new arguments first and second.

metan 1.5.1

CRAN release: 2020-04-25

Minor changes

  • plot_bars() and plot_factbars() now align vertically the labels to the error bars.
  • fai_blup() now returns the eigenvalues and explained variance for each axis and variables into columns instead row names.
  • Fixes the error with donttest{} examples. Now, the correct data set is used in the example of fai_blup()

metan 1.5.0

CRAN release: 2020-04-12

New functions

Minor changes

Bug fixes

  • Fix problems from a recent upgrade of package tibble to version 3.0.0.
  • get_model_data() now fills rows that don’t matches across columns with NA. Thanks to @MdFarhad for his report.
  • get_model_data() called now report mean squares, F-calculated and P-values for blocks within replicates in anova_ind().

metan 1.4.0

CRAN release: 2020-03-17

Bug fixes

  • Factor columns can now have custom names rather than ENV, GEN, and REP only (#2).

New functions

Minor changes

metan 1.3.0

CRAN release: 2020-02-11

New functions


  • cv_by() For computing coefficient of variation by levels of a factor.
  • max_by() For computing maximum values by levels of a factor.
  • means_by() For computing arithmetic means by levels of a factor.
  • min_by() For computing minimum values by levels of a factor.
  • n_by() For getting the length.
  • sd_by() For computing sample standard deviation.
  • sem_by() For computing standard error of the mean by levels of a factor.
  • av_dev() computes the average absolute deviation.
  • ci_mean() computes the confidence interval for the mean.
  • cv() computes the coefficient of variation.
  • hm_mean(), gm_mean() computes the harmonic and geometric means, respectively. The harmonic mean is the reciprocal of the arithmetic mean of the reciprocals. The geometric mean is the nth root of n products.
  • kurt() computes the kurtosis like used in SAS and SPSS.
  • range_data() Computes the range of the values.
  • sd_amo(), sd_pop() Computes sample and populational standard deviation, respectively.
  • sem() computes the standard error of the mean.
  • skew() computes the skewness like used in SAS and SPSS.
  • sum_dev() computes the sum of the absolute deviations.
  • sum_sq_dev() computes the sum of the squared deviations.
  • var_amo(), var_pop() computes sample and populational variance.
  • valid_n() Return the valid (not NA) length of a data.



  • all_lower_case(), all_upper_case(), and all_title_case() to translate strings vectors or character columns of a data frame to lower, upper and title cases, respectively.
  • tidy_strings() Tidy up characters strings, non-numeric columns, or any selected columns in a data frame by putting all word in upper case, replacing any space, tabulation, punctuation characters by '_', and putting '_' between lower and upper cases.
  • find_text_in_num() Find text fragments in columns assumed to be numeric. This is especially useful when everything() is used in argument resp to select the response variables.

New arguments

  • anova_ind(), anova_joint(), performs_ammi(), waas() and waasb(), now have the argument block to analyze data from trials conducted in an alpha-lattice design. Thanks to @myaseen208 for his suggestion regarding multi-environment trial analysis with alpha-lattice designs.
  • argument repel included in plot_scores() to control wheater the labels are repelled or not to avoid overlapping.

Deprecated arguments

Argument means_by was deprecated in functions can_corr() and clustering(). Use means_by() to pass data based on means of factor to these functions.

Minor changes

  • Change “#000000FF” with “#FFFFFF00” in transparent_color()
  • desc_stat() now handles grouped data passed from dplyr::group_by()
  • plot_scores() now support objects of class waas_mean.
  • Include inst/CITATION to return a reference paper with citation("metan").
  • Change ‘PC2’ with ‘PC1’ in y-axis of plot_scores(type = 2) (#1)
  • get_model_data() now support models of class anova_joint and gafem and extract random effects of models fitted with waasb() and gamem().
  • Update plot.waasb() and plot.gamem() to show distribution of random effects.
  • inspect(), cv_blup(), cv_ammif(), and cv_ammi() now generate a warning message saying that is not possible to compute cross-validation procedures in experiments with two replicates only. Thanks to @Vlatko for his email.
  • plot.wsmp() now returns heatmaps created with ggplot2. Thus, we removed dependency on gplots.
  • Vignettes updated

metan 1.2.1

CRAN release: 2020-01-14

  • References describing the methods implemented in the package were included in description field of DESCRIPTION file as suggested by the CRAN team.

metan 1.2.0

metan 1.1.2

metan 1.1.1

  • Now on.exit() is used in S3 generic functions print() to ensure that the settings are reset when a function is excited.
  • Computationally intensive parts in vignettes uses pre-computed results.

metan 1.1.0

I’m very pleased to announce the release of metan 1.1.0, This is a minor release with bug fixes and new functions. The most important changes are described below.

  • New function corr_stab_ind() for computing Spearman’s rank correlation between stability indexes;
  • New function corr_coef() for computing correlation coefficients and p-values;
  • New S3 method plot.corr_coef() for creating correlation heat maps;
  • New S3 method print.corr_coef() for printing correlation and p-values;
  • New helper functions make_lower_tri() and make_upper_tri() for creating lower and upper triangular matrices, respectively.
  • New helper function reorder_cormat() for reordering a correlation matrix according to the correlation coefficients;
  • Improve usability of get_model_data() by supporting new classes of models. Now, get_model_data() can be used to get all statistics or ranks computed with the wrapper function ge_stats().
  • arrange_ggplot() now support objects of class ggmatrix.
  • Change the default plot theme to theme_metan()
  • Update function’s documentation;
  • Update vignettes.

metan 1.0.2

  • New function arrange_ggplot() for arranging ggplot2 graphics;
  • New function ge_effects() for computing genotype-environment effects;
  • New function gai() for computing the geometric adaptability index;
  • New helper function gm_mean() for computing geometric mean;
  • New helper function hm_mean() for computing harmonic mean;
  • New helper function Huehn() for computing Huehn’s stability statistic;
  • New helper function Thennasaru() for computing Thennasaru’s stability statistic;
  • Improve usability of get_model_data() by supporting new classes of models;
  • Update function’s documentation;
  • Update vignettes;

metan 1.0.1

  • New function gamem() for analyzing genotypes in one-way trials using mixed-effect models;
  • New function desc_wider() to convert an output of the function desc_stat() to a ‘wide’ format;
  • New function Fox() for Stability analysis;
  • New function Shukla() for stability analysis;
  • New function to_factor() to quickly convert variables to factors;
  • Improve usability of get_model_data() function;
  • Update function’s documentation;
  • Update vignettes;

metan 1.0.0

The changes in this version were made based on suggestions received when metan was submitted to CRAN for the first time.

Major changes

The documentation of the following functions was updated by including/updating the \value section of .Rd files.

Minor changes

To allow automatic testing, the examples of the following functions were unwrapped by deleting \dontrun{}.

In the examples of the functions for cross-validation \dontrun{} was changed with \donttest{} * cv_ammi() * cv_ammif() * cv_blup() * plot.cv_ammif()

metan 0.2.0

This is the first version that will be submitted to CRAN. In this version, deprecated functions in the last versions were defunct. Some new features were implemented.

metan 0.1.5

In the latest development version, the package METAAB was renamed to metan (multi-environment trials analysis). Aiming at a cleaner coding, in this version, some functions were deprecated and will be defunct in the near future. Alternative functions were implemented.

  • For WAAS.AMMI(), use waas().
  • For WAASBYratio(), use wsmp().
  • For WAASratio.AMMI(), use wsmp().
  • For autoplot.WAAS.AMMI(), use autoplot.waas().
  • For plot.WAASBYratio(), use plot.wsmp().
  • For plot.WAASratio.AMMI(), use plot.wsmp().
  • For predict.WAAS.AMMI(), use predict.waas().
  • For summary.WAAS.AMMI(), use summary.waas()

Widely-known parametric and nonparametric methods were implemented, using the following functions.

  • Annicchiarico() to compute the genotypic confidence index.
  • ecovalence() to compute the Wricke’s ecovalence.
  • ge_factanal() to compute to compute the stability and environmental.
  • ge_reg() to compute the joint-regression analysis. stratification using factor analysis.
  • superiority() to compute the nonparametric superiority index.