agentsclimarketplace

Metabolite feature ranking

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v2/skills/metabolite-feature-ranking

Use when you have an imputed, long-format metabolomics dataset with repeated measurements across subjects and a grouping variable (e.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill metabolite-feature-ranking

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

7.4 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it

metabolite-feature-ranking

License: restricted — no clear open-source license detected for the underlying tool; verify licensing before commercial use or redistribution. <!-- asb-license-banner -->

Summary

Rank metabolites in imputed longitudinal metabolomics datasets by statistical significance using repeated measures ANOVA to enable prioritized feature selection for downstream analysis. This skill applies ANOVA models to identify metabolites with the strongest evidence of difference across experimental groups.

When to use

Apply this skill when you have an imputed, long-format metabolomics dataset with repeated measurements across subjects and a grouping variable (e.g., treatment arm, disease status), and you need to identify and prioritize metabolites that show statistically significant variation between groups for feature selection before multivariate or predictive modeling.

When NOT to use

  • Dataset contains unimputed missing values — imputation must be completed first (via KNN or other methods)
  • Data is not in long format with repeated measurements per subject — repeated measures ANOVA requires within-subject structure
  • No grouping variable or categorical contrast of interest exists in the design

Inputs

  • Imputed long-format metabolomics dataset (columns: id, time, grouping_variable, metabolite_name, numeric_value)
  • Experimental design metadata (subject identifiers, group assignments)

Outputs

  • Ranked metabolite feature table (CSV: metabolite_name, F_statistic, p_value, rank)
  • ANOVA model objects (F-statistics and p-values per metabolite)

How to apply

Load the imputed long-format metabolomics dataset containing subject ID, timepoint, grouping variable, metabolite names, and numeric values. For each metabolite independently, fit a repeated measures ANOVA model with the grouping variable as a fixed effect and subject ID as a random effect to account for within-subject correlation. Extract the F-statistic and p-value from each ANOVA model output. Rank all metabolites by ascending p-value (or descending F-statistic) to prioritize those with the strongest statistical evidence of group differences. Export the ranked metabolite table as a CSV file containing metabolite name, F-statistic, p-value, and rank position for downstream interpretation and feature selection.

Related tools

  • MeTEor (R Shiny application implementing repeated measures ANOVA, linear mixed models, and metabolite ranking for longitudinal metabolomics exploration and statistical analysis) — https://github.com/scibiome/meteor
  • R (Statistical computing environment for implementing ANOVA models and ranking computations)
  • tidyverse (R package suite for data manipulation, transformation, and export of ranked metabolite tables)

Examples

library(MeTEor); library(tidyverse); # Load imputed long-format data; anova_results <- metabolomics_data %>% group_by(metabolite_name) %>% summarize(f_stat = anova(lmer(value ~ group_var + (1|id)))$'F value', p_val = anova(lmer(value ~ group_var + (1|id)))$'Pr(>F)', .groups='drop') %>% arrange(p_val) %>% mutate(rank = row_number()); write.csv(anova_results, 'ranked_metabolites.csv', row.names=FALSE)

Evaluation signals

  • Ranked metabolite table is non-empty and contains all metabolites from input dataset with no duplicates
  • All p-values are between 0 and 1; F-statistics are non-negative; ranks are sequential integers starting from 1
  • Metabolites are sorted by p-value ascending (or F-statistic descending); ties are handled consistently
  • CSV export includes all required columns (metabolite_name, F_statistic, p_value, rank) with correct data types and no missing values
  • Top-ranked metabolites (lowest p-values) show biological plausibility or concordance with known group-discriminating features from the study context

Limitations

  • Repeated measures ANOVA assumes compound symmetry or sphericity of the covariance structure; violations may inflate Type I error — consider Greenhouse-Geisser correction if covariance assumptions are violated
  • Ranking by p-value alone does not account for effect size; biologically important metabolites with small p-values may differ minimally between groups
  • Missing data remaining after imputation will bias ANOVA estimates; imputation method (e.g., KNN) quality affects downstream ranking
  • Multiple testing correction (e.g., Bonferroni, FDR) is not applied in the basic workflow; practitioners should apply correction for large-scale feature selection

Evidence

  • [other] For each metabolite, fit a repeated measures ANOVA model with the grouping variable as the fixed effect and id as the random effect (subject).: "For each metabolite, fit a repeated measures ANOVA model with the grouping variable as the fixed effect and id as the random effect (subject)."
  • [other] Extract the F-statistic and p-value for each metabolite from the ANOVA output. Rank all metabolites by p-value (ascending) or F-statistic (descending) to prioritize those with strongest evidence of difference across groups.: "Extract the F-statistic and p-value for each metabolite from the ANOVA output. Rank all metabolites by p-value (ascending) or F-statistic (descending) to prioritize those with strongest evidence of"
  • [other] Repeated measures ANOVA operates on imputed metabolomics data to identify and rank metabolites by their statistical significance, enabling prioritization of features for downstream statistical analysis.: "Repeated measures ANOVA operates on imputed metabolomics data to identify and rank metabolites by their statistical significance, enabling prioritization of features for downstream statistical"
  • [readme] Statistical models: Linear Mixed Models, Repeated Measures ANOVA, Mixed ANOVA, Friedman test: "Statistical models: Linear Mixed Models, Repeated Measures ANOVA, Mixed ANOVA, Friedman test"
  • [other] The dataset contains missing values, which need to be addressed before conducting analysis in MeTEor.: "The dataset contains missing values, which need to be addressed before conducting analysis in MeTEor."

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.