AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified Apache-2.0 Self-run

Analyzing Proteomics Data

skill-mannlabs-proteomics-agent-skills-analyzing-proteomics-data · by MannLabs

Analyze proteomics search engine outputs using alphapepttools with AnnData. Use when (1) analyzing proteomics data from DIA-NN, AlphaDIA, Spectronaut, MaxQuant, or other search engines, (2) quality control and preprocessing of protein/peptide abundance matrices, (3) performing differential expression analysis on proteomics data, (4) visualizing proteomics results, (5) ALWAYS use alphapepttools ov…

No reviews yet
0 installs
11 views
0.0% view→install

Install

$ agentstack add skill-mannlabs-proteomics-agent-skills-analyzing-proteomics-data

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-mannlabs-proteomics-agent-skills-analyzing-proteomics-data)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
9d ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Analyzing Proteomics Data? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Analyzing Proteomics Data with alphapepttools

alphapepttools is a Python package that provides search engine-agnostic proteomics analysis compatible with the scverse ecosystem.

Structure

alphapepttools contains multiple subpackages:

.io: Read search engine outputs into standardized anndata format (see ./references/io-patterns.md) .pp: Quality control and preprocess proteomics data .tl: Statistical analysis of proteomics data (principal component analysis, differential expression) .pl: Plotting and visualization functionalities .metrics: Assess quality of analysis steps

Philosophy

alphapepttools formalizes best practices efforts. Function docstrings, contain recommended best practices, and code examples.

When considering using a method, ALWAYS check its docstring first. Carefully inspect the provided code snippets in the Examples section.

help(alphapepttools.tl.)

Core Pattern: Layer Checkpointing

Every transformation should be checkpointed to a new layer for debugging, reproducibility, and rollback:

import alphapepttools as at

# Checkpoint raw data
adata.layers["raw"] = adata.X.copy()

# Transform and checkpoint each step
at.pp.nanlog(adata, base=2)  # Modifies X inplace
adata.layers["log2"] = adata.X.copy()

at.pp.normalize(adata, strategy="total_mean")
adata.layers["normalized"] = adata.X.copy()

Workflow

Iterative Workflow with Decision Checkpoints

1. Load Data

adata = at.io.read_pg_table(path, search_engine="diann")
adata = at.pp.add_metadata(adata, metadata_df, axis=0)

2. Subsetting AnnData objects

Sample-level
adata = at.pp.filter_by_metadata(adata, filter_dict={"continuous_column1_in_obs": (0, 0.5), "continuous_column2_in_obs": (0, None), "categorical_column_in_obs": "A"}, action="keep", logic="and", axis=0)
# Keep all samples whose
# Values in continuous_column1_in_obs are in the range (0, 0.5)
# Values in continuous_column2_in_obs are in the range (0, infinity)
# Values in categorical_column_in_obs are category A
Feature-level
adata = at.pp.filter_data_completeness(adata, max_missing=0.25, action="drop")

3. Transform

adata.layers["raw"] = adata.X.copy()
at.pp.nanlog(adata, base=2)
adata.layers["log2"] = adata.X.copy()
at.pp.normalize(adata, strategy="total_mean")
adata.layers["normalized"] = adata.X.copy()

Associated metrics Separation of samples based on intensity in PCA, at.metrics.principal_component_regression(), at.metrics.pooled_median_absolute_deviation()

Impute Missing Values

Imputation methods are in the at.pp.impute submodule. Available methods include impute_knn, impute_bpca, impute_gaussian for Perseus-style mputation, and impute_median

adata = at.pp.impute_gaussian(adata, copy=True)

Batch Correction

# Defensive pattern - impute and drop singletons first
adata = at.pp.drop_singleton_batches(adata, batch="batch_column")
at.pp.scanpy_pycombat(adata, batch="batch_column")

Associated metrics Separation of batches in PCA, at.metrics.principal_component_regression()

Dimensionality Reduction

at.tl.pca(adata, n_comps=10)
# Results: .obsm['X_pca_obs'], .varm['PCs_obs'], .uns['variance_pca_obs']

_obs vs _var suffix convention:

  • _obs: PCA computed on observations (samples as points, features as dimensions) - standard for sample clustering
  • _var: PCA computed on variables (features as points, samples as dimensions) - for feature relationships
  • alphapepttools uses X_pca_obs (not scanpy's X_pca) to make the orientation explicit

Associated metrics Scree plot, PCA by experimental condition

Differential Expression

de_results = at.tl.diff_exp_ttest(
    adata,
    between_column="condition",
    comparison=("control", "treatment")
)
# Returns DataFrame: t_value, p_value, fdr, log2fc, ratio

Associated metrics Volcano plot, number of significant hits

Copy/Inplace Behavior

  • copy=False (default): Modifies adata.X inplace, returns None
  • copy=True: Returns new AnnData, original unchanged
  • layer="name": Operate on specific layer instead of .X. If None, uses adata.X

Function Overview by Subpackage

io - Data Loading

  • read_pg_table() - Protein group matrices
  • read_psm_table() - PSM/precursor tables with aggregation options

See [IO Patterns](references/io-patterns.md) for reader selection and metadata loading.

pp - Preprocessing

  • add_metadata(), filter_by_metadata(), filter_data_completeness()
  • nanlog(), normalize(), scale_and_center()
  • impute_gaussian(), impute_knn(), impute_bpca()
  • scanpy_pycombat(), drop_singleton_batches()

See [Preprocessing Pitfalls](references/preprocessing-pitfalls.md) for common errors and defensive patterns.

tl - Analysis

  • pca(), bpca() - Dimensionality reduction
  • diff_exp_ttest(), diff_exp_ebayes() - Differential expression

metrics - Quality Control

  • coefficient_of_variation(), pooled_coefficient_of_variation()
  • pooled_median_absolute_deviation() - Normalization quality assessment
  • principal_component_regression() - Batch effect assessment

pl - Visualization

  • create_figure(), Plots.scatter(), Plots.histogram()
  • Plots.scree_plot(), Plots.rank_median_plot()

See [Plotting Recipes](references/plotting-recipes.md) for data extraction and common plot types.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.