geo-database
Access NCBI GEO for gene expression/genomics data. Search/download microarray and RNA-seq datasets (GSE, GSM, GPL), retrieve SOFT/Matrix files, for transcriptomics and expression analysis.
npx skills add LeonChaoX/qinyan-academic-skills --skill geo-database --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
The skill enables searching GEO for datasets, retrieving metadata and expression data, and downloading data files such as matrix and SOFT formats. It covers both data discovery (searching with terms, organisms, data types) and data retrieval (GEOparse usage, downloading supplementary files, and E-utilities workflows). It also includes concrete procedures for accessing and parsing GEO data, and for basic analyses like filtering, differential expression, and clustering.
How it works
It provides step-by-step usage patterns and code snippets for:
- Searching GEO DataSets and GEO Profiles via Entrez (db="gds", db="geoprofiles").
- Building and executing advanced search queries with terms and operators.
- Using GEOparse to download and parse GEO series (GSE), access metadata, samples (GSM), and platforms (GPL), and to extract expression matrices via gse.pivot_samples('VALUE').
- Accessing and downloading supplementary files, and filtering samples by metadata (e.g., control vs treatment).
- Working with GEO data via E-utilities for search, summaries, and full records (esearch, esummary, efetch).
- Direct FTP or wget/curl methods to download data files (matrix, soft, suppl).
- Basic QC, preprocessing, differential expression analysis, and clustering using Python code blocks (log transformation, box plots, t-tests, BH correction, heatmaps, dendrograms).
- Batch processing examples to download and extract information from multiple GEO series.
All commands, file names, and tool names are quoted exactly as shown in the skill (e.g., "GEOparse", "GSE123456", "matrix", "soft", "GSEs").
When to use it
Use when you need to locate gene expression datasets, retrieve raw/processed files, or integrate GEO data into analysis workflows. It guides searching by keywords, organism, and dataset type, and provides workflows for downloading and preprocessing data for downstream analysis.
What it can touch
- Tools: "GEOparse" (Python library)
- Libraries: "Bio" Entrez (Biopython), numpy, pandas, scipy, statsmodels
- File types: "GSE123456", "GSE123nnn" series, "matrix" files, "soft" files, supplementary files
- FTP access via standard FTP operations
- shell commands for wget/curl-based downloads
Caveats
- License field states MIT for the folder; the skill text itself lists license as Unknown in front matter. No licensing claims are expanded beyond that.
- The skill provides example IDs (e.g., GSE123456) and placeholder sample names; real analyses must insert actual study-specific identifiers.
- No guarantees are stated for data completeness or processing outcomes; user must validate results.
# GEO Database ## Overview The Gene Expression Omnibus (GEO) is NCBI's public repository for high-throughput gene expression and functional genomics data. GEO contains over 264,000 studies with more than 8 million samples from both array-based and sequence-based experiments. ## When to Use This Skill This skill should be used when searching for gene expression datasets, retrieving experimental data, downloading raw and processed files, querying expression profiles, or integrating GEO data into computational analysis workflows. ## Core Capabilities ### 1. Understanding GEO Data Organization GEO organizes data hierarchically using different accession types: **Series (GSE):** A complete experiment with a set of related samples - Example: GSE123456 - Contains experimental design, samples, and overall study information - Largest organizational unit in GEO - Current count: 264,928+ series **Sample (GSM):** A single experimental sample or biological replicate - Example: GSM987654 - Contains individual sample data, protocols, and metadata - Linked to platforms and series - Current count: 8,068,632+ samples **Platform (GPL):** The microarray or sequencing platform used - Example: GPL570 (Af
- Overview
- When to Use This Skill
- Core Capabilities
- 1. Understanding GEO Data Organization
- 2. Searching GEO Data
- 3. Retrieving GEO Data with GEOparse (Recommended)
- 4. Using NCBI E-utilities for GEO Access
- 5. Direct FTP Access for Data Files
- 6. Analyzing GEO Data
- 7. Batch Processing Multiple Datasets
- Installation and Setup
- Python Libraries
- Configuration
- Common Use Cases
uv pip install GEOparse Download series matrix file wget ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE123nnn/GSE123456/matrix/GSE123456_series_matrix.txt.gz Download all supplementary files for a series wget -r -np -nd ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE123nnn/GSE123456/suppl/ Download SOFT format family file wget ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE123nnn/GSE123456/soft/GSE123456_family.soft.gz Primary GEO access library (recommended) For E-utilities and programmatic NCBI access uv pip install biopython
What does the geo-database skill do?
Access NCBI GEO for gene expression/genomics data. Search/download microarray and RNA-seq datasets (GSE, GSM, GPL), retrieve SOFT/Matrix files, for transcriptomics and expression analysis.
How do I install it?
Run `npx skills add LeonChaoX/qinyan-academic-skills --skill geo-database --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From LeonChaoX/qinyan-academic-skills, a repository with 759 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
