关于 bioinformatics
Bioinformatics 是面向计算生物学分析的 Agent 技能,可生成可复现的数据分析流程,涵盖测序、转录组、蛋白质和系统生物学。它根据数据类型组织标准步骤,并提供参数化、文档化的流程。
主要功能
- 01单细胞 RNA-seq 与 Scanpy 分析
- 02序列比对与同源性搜索
- 03基因调控网络推断
- 04GO、KEGG 通路富集分析
- 05变异分析与蛋白质结构预测
适用场景
- 01处理 FASTA/FASTQ 序列数据
- 02分析单细胞 RNA-seq 表达数据
- 03开展基因调控网络或通路分析
- 04从序列预测蛋白质结构或功能
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ itallstartedwithaidea/ agent-skills --skill bioinformatics安装后在 Claude Code 中输入/bioinformatics确认已加载。
详细介绍
生物信息学
属于 Agent Skills™,由 googleadsagent.ai™ 提供
描述
生物信息学提供计算生物学工作流,涵盖序列分析、蛋白质结构预测、使用 Scanpy 进行单细胞 RNA-seq 分析、基因调控网络推断和通路富集分析。Agent 使用 BioPython、Scanpy 和标准生物信息学工具生成可复现的分析流程,并遵循各类分析的社区最佳实践。
现代生物学生成数据的速度超过了生物学家分析数据的速度。一次单细胞 RNA-seq 实验会生成数万个细胞的表达谱,每个细胞都测量了数千个基因。本技能编码了标准分析流程,可将原始测序数据转化为生物学见解:质量控制、归一化、降维、聚类、差异表达和通路富集。
本技能的范围不仅限于转录组学,还包括基因组学(变异检测、注释)、蛋白质组学(序列分析、结构域预测)和系统生物学(基因调控网络、蛋白质-蛋白质相互作用)。每个流程都有参数配置、文档记录且可复现——相同的输入始终产生相同的输出。
适用场景
- 使用 Scanpy 分析单细胞 RNA-seq 数据
- 执行序列比对或同源性搜索
- 构建基因调控网络模型
- 运行通路富集分析(GO、KEGG)
- 使用 BioPython 处理 FASTA/FASTQ 文件
- 根据序列预测蛋白质结构或功能
工作原理
graph TD
A[Raw Sequencing Data] --> B[Quality Control]
B --> C[Alignment / Quantification]
C --> D{Analysis Type}
D -->|Single-Cell| E[Scanpy Pipeline]
D -->|Bulk RNA-seq| F[DESeq2 / edgeR]
D -->|Genomics| G[Variant Calling]
E --> H[Normalize → PCA → UMAP → Cluster]
H --> I[Differential Expression]
I --> J[Pathway Enrichment]
F --> I
G --> K[Annotation + Impact Prediction]
J --> L[Biological Interpretation]
K --> L
流程会根据数据类型分支处理。单细胞数据遵循 Scanpy 标准工作流;批量 RNA-seq 使用 DESeq2 或 edgeR;基因组数据则进行变异检测和注释。所有路径最终都会汇聚到生物学解释。
实现
import scanpy as sc
import numpy as np
def scrna_pipeline(adata_path: str, min_genes: int = 200, min_cells: int = 3) -> sc.AnnData:
adata = sc.read_h5ad(adata_path)
sc.pp.filter_cells(adata, min_genes=min_genes)
sc.pp.filter_genes(adata, min_cells=min_cells)
adata.var["mt"] = adata.var_names.str.startswith("MT-")
sc.pp.calculate_qc_metrics(adata, qc_vars=["mt"], inplace=True)
adata = adata[adata.obs.pct_counts_mt < 20, :].copy()
sc.pp.normalize_total(adata, target_sum=1e4)
sc.pp.log1p(adata)
sc.pp.highly_variable_genes(adata, n_top_genes=2000, flavor="seurat_v3")
adata.raw = adata
adata = adata[:, adata.var.highly_variable].copy()
sc.pp.scale(adata, max_value=10)
sc.tl.pca(adata, n_comps=50)
sc.pp.neighbors(adata, n_pcs=30)
sc.tl.umap(adata)
sc.tl.leiden(adata, resolution=0.5)
sc.tl.rank_genes_groups(adata, groupby="leiden", method="wilcoxon")
return adata
def pathway_enrichment(gene_list: list[str], organism: str = "hsapiens") -> pd.DataFrame:
from gprofiler import GProfiler
gp = GProfiler(return_dataframe=True)
results = gp.profile(
organism=organism,
query=gene_list,
sources=["GO:BP", "GO:MF", "KEGG", "REAC"],
)
return results[results["significant"]].sort_values("p_value")
from Bio import SeqIO, Align
def sequence_analysis(fasta_path: str) -> dict:
records = list(SeqIO.parse(fasta_path, "fasta"))
aligner = Align.PairwiseAligner()
aligner.mode = "global"
stats = {
"num_sequences": len(records),
"lengths": [len(r.seq) for r in records],
"gc_content": [float(r.seq.count("G") + r.seq.count("C")) / len(r.seq) for r in records],
}
return stats
最佳实践
- 将少于 200 个基因的细胞以及出现在少于 3 个细胞中的基因过滤掉,作为最低质量阈值
- 移除线粒体读数占比超过 20% 的细胞,因为它们可能已经死亡或濒临死亡
- 对单细胞数据的差异表达分析使用 Wilcoxon 秩和检验
- 对所有基因层级的检验进行多重检验校正(Benjamini-Hochberg)
- 在流程的每个阶段保存中间 AnnData 对象,以确保可复现性
- 报告分析所用的 Scanpy、AnnData 和 Python 版本
平台兼容性
| 平台 | 支持情况 | 备注 |
|---|---|---|
| Cursor | 完全支持 | 支持 Python 和 Jupyter |
| VS Code | 完全支持 | 支持 Jupyter + Scanpy 集成 |
| Windsurf | 完全支持 | 科学计算 Python |
| Claude Code | 完全支持 | 流程脚本生成 |
| Cline | 完全支持 | 生物信息学工作流 |
| aider | 部分支持 | 代码层级支持 |
相关技能
关键词
bioinformatics scanpy single-cell rna-seq biopython gene-expression pathway-enrichment sequence-analysis
© 2026 googleadsagent.ai™ | Agent Skills™ | MIT License