agentsclimarketplace

Microarray expression data loading

Skill HolobiomicsLab/asb-skill-collections/collections/transcriptomics/v1/skills/microarray-expression-data-loading

Use when you have raw or normalized microarray expression matrices stored in public repositories (GEO accessions) along with sample metadata, and you need to load both into R as structured objects (expression matrix and phenotype data frame) to construct a design matrix and fit linear models for.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill microarray-expression-data-loading

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

6.0 KB, 885 tokens by cl100k_base, as published. Nobody here has run it

microarray-expression-data-loading

Summary

Loading and structuring microarray expression data and associated phenotype metadata from public repositories (e.g., GEO) into R memory for downstream linear modeling and differential expression analysis. This is the essential first step before applying limma's lmFit function to designed experiments.

When to use

You have raw or normalized microarray expression matrices stored in public repositories (GEO accessions) along with sample metadata, and you need to load both into R as structured objects (expression matrix and phenotype data frame) to construct a design matrix and fit linear models for differential expression.

When NOT to use

  • Expression data are already loaded and validated in memory as a structured object.
  • Working with RNA-seq count matrices (which require different normalization strategies than microarray intensity data).
  • Data are already in a pre-processed, batch-corrected feature table from a prior analysis pipeline.

Inputs

  • GEO accession identifier (string)
  • Public microarray dataset URL or local file path
  • Phenotype/sample metadata table (CSV, TSV, or embedded in GEO record)

Outputs

  • Expression matrix (numeric matrix or ExpressionSet object; genes/probes × samples)
  • Phenotype data frame (samples × experimental covariates)
  • Combined eSet or MicroarrayExpressionSet object

How to apply

Retrieve microarray expression data and phenotype metadata from a public GEO accession using appropriate R data-loading functions (e.g., GEOquery::getGEO or similar repository interfaces). Parse the expression matrix so that rows represent gene probes and columns represent sample replicates, and load the phenotype metadata as a data frame with rows matching sample order. Verify that sample identifiers in the expression matrix column names correspond exactly to row names in the phenotype data frame. This ensures that the design matrix constructed in the next step correctly maps experimental conditions to expression measurements.

Related tools

  • limma (Primary R package for fitting linear models to microarray expression after data loading; receives the loaded expression matrix and design matrix.) — https://github.com/bioc/limma
  • GEOquery (R package for retrieving microarray and metadata directly from GEO accessions.)
  • R (Programming environment for executing data loading, validation, and downstream analysis.)

Evaluation signals

  • Expression matrix dimensions match expected probe count and sample count; no missing values in critical rows/columns.
  • Sample identifiers in expression matrix column names match exactly (by name and order) with row names in phenotype data frame.
  • Expression values fall within expected intensity range for the microarray platform (e.g., log2 scale, 0–16 for Affymetrix; 0–65535 for two-color arrays).
  • Phenotype data frame includes all required experimental grouping variables (e.g., treatment, control status) without NAs in key columns.
  • No sample replicates are duplicated or missing; metadata row count equals expression matrix column count.

Limitations

  • GEO records may contain incomplete or ambiguous phenotype metadata; manual curation or cross-reference with the original publication may be required.
  • Microarray platforms vary widely (Affymetrix, Illumina, two-color cDNA, etc.); platform-specific probe mapping and intensity normalization strategies must be applied before or immediately after loading.
  • Public repositories may enforce access restrictions or rate limits on bulk downloads; script timeouts or authentication may be necessary.
  • Batch effects introduced during sample collection, array manufacturing, or data acquisition are not resolved by loading alone; post-loading normalization and batch correction (limma::removeBatchEffect or similar) are typically required before statistical modeling.

Evidence

  • [other] Load microarray expression data and phenotype metadata from a public GEO accession using appropriate R data-loading functions.: "Load microarray expression data and phenotype metadata from a public GEO accession using appropriate R data-loading functions."
  • [other] Limma is an R package for the analysis of gene expression data, especially the use of linear models for analysing designed experiments: "Limma is an R package for the analysis of gene expression data, especially the use of linear models for analysing designed experiments"
  • [other] The linear model and differential expression functions apply to a wide variety of gene expression technologies including microarrays: "The linear model and differential expression functions apply to a wide variety of gene expression technologies including microarrays"

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.