SuperAPI AI 工具集

tooluniverse-data-wrangling

数据与分析

查看项目

更新于 10-15 09:13

技能介绍

用途

本技能是 ToolUniverse 中用于科学数据下载与解析的通用访问模式参考。当 ToolUniverse 工具返回的是元数据或搜索结果而非原始/批量数据、数据格式不被工具解析、需要多步 API 工作流(搜索→过滤→下载→解析)、数据源完全没有对应工具,或需要数千条记录而非工具返回的 10–100 条时,使用本参考。每一步都通过 Bash 编写并运行 Python 代码完成。

工具与代码的选择

  • 单条记录查询、简单搜索、结果少于 100 条:使用 ToolUniverse 工具(execute_tool)。
  • 批量下载、自定义过滤、格式转换:编写 Python 代码。
  • 工具存在但结果被截断:使用该工具所封装的同一 API 编写代码。
  • 该数据源没有工具:直接编写代码。

主要能力

A. 格式手册

  • 表格:CSV、TSV、SAS Transport(XPT,如 NHANES、CDC)、SAS 原生、Stata(如 ICPSR、HRS)、Parquet(如 MIMIC-IV)、Excel、SPSS、定宽格式。
  • 基因组:FASTA、FASTQ(BioPython SeqIO)、VCF(无需 cyvcf2 的纯文本解析)、GFF/GTF、BED、BAM(需 pysam)。
  • 结构:PDB、mmCIF(Bio.PDB)、SDF/MOL(需 rdkit)。
  • 组学矩阵:AnnData h5ad(scRNA-seq、空间)、10X Genomics MTX、GCT、Loom。
  • 质谱与流式:mzML(需 pyteomics)、FCS(需 fcsparser)。
  • 神经影像:NIfTI(需 nibabel)、DICOM(需 pydicom)。
  • 系统发育与系统生物学:Newick/Nexus(Bio.Phylo)、SBML(需 python-libsbml)。
  • 序列化:JSON、XML、HDF5。
  • 压缩:gzip、ZIP、tar.gz。

B. 按领域的 API 模式

每类均说明已有 ToolUniverse 工具,以及如何通过直接 API 调用超越它们:

  1. NCBI E-utilities(Gene、Nucleotide、Protein、SRA、GEO):esearch 获取 ID,efetch 分批(每批 500)获取记录。
  2. EBI API(UniProt、PDBe、ChEMBL、Ensembl、InterPro):UniProt 批量 TSV 下载并使用 cursor 分页。
  3. NCI GDC(TCGA/TARGET 癌症数据):带过滤条件的批量临床数据查询。
  4. CDC 健康调查(NHANES、BRFSS、WONDER):直接下载 NHANES XPT 文件。
  5. GWAS 与遗传学(GWAS Catalog、gnomAD、ClinVar):GWAS Catalog 全量 TSV 下载后本地过滤。
  6. 化学(PubChem、ChEMBL、KEGG):PubChem 批量属性检索(一次最多 100 个 CID)。
  7. 表达(GEO、ArrayExpress、GTEx):GEO series matrix 直接下载;GTEx 批量表达(各组织 median TPM)。
  8. 临床(ClinicalTrials.gov、FDA/OpenFDA、FAERS):ClinicalTrials.gov v2 API 分页。
  9. 文献(PubMed、PMC、EuropePMC):EuropePMC 全文检索并使用 cursor。
  10. 数据仓库(Zenodo、Figshare、Dryad、DataCite):Zenodo 搜索并下载文件。 11–24. 专业领域:蛋白质组学(PRIDE、MassIVE、ProteomeXchange)、代谢组学(MetaboLights、Metabolomics Workbench、HMDB)、微生物组(MGnify、GMREPO)、生态学(GBIF、iNaturalist、OBIS)、模式生物(FlyBase、WormBase、ZFIN、RGD)、通路与网络(Reactome、STRING、BioGRID)、本体(OLS、GO、HPO)、免疫学(IEDB、VDJdb、ImmPort)、药物与制药(PharmGKB、DGIdb、SIDER)、影像与图谱(TCIA、HPA、Allen Brain Atlas)、蛋白结构(RCSB PDB、AlphaFold)、临床基因组学(ClinVar、ClinGen、CIViC)、单细胞(cellxgene、ARCHS4)、毒理学(CTD、EPA CompTox)。需要具体 API 模式时阅读 references/specialized-domains.md。

C. 受限/未覆盖数据源

列出需要注册或没有 ToolUniverse 工具的数据源及其访问要求、等待时间、格式与内容,包括:UK Biobank(受限,2–6 个月)、dbGaP(受控,1–3 个月)、MIMIC-IV(需资质,1–2 周)、ICPSR(注册,1–3 天)、HRS(注册,1–3 天)、ELSA(注册,1–3 天)、SHARE(注册,1–2 周)、Materials Project(免费 API key,即时)、Human Cell Atlas(开放,即时)、ADNI(申请,1–2 个月)、OpenNeuro(开放,即时)、CIBERSORTx(免费注册,即时)、FlowRepository(开放,即时)、SynBioHub(开放,即时)。对于受限数据源,建议检索文献中已发表的分析,论文常将衍生数据存入 GEO、SRA、Zenodo 等公共仓库。

D. 通用模式

  • 分页:offset + limit 模式;cursor/token 模式(EuropePMC、ClinicalTrials.gov、UniProt)。
  • 限流与重试:处理 429 状态码与 Retry-After 头,指数退避。
  • 认证:API key 放请求头或查询参数;多数科学 API(NCBI、EBI、PubChem、GDC、CDC)无需认证。
  • 流式批量下载:分块写入文件。
  • 错误处理:检查状态码,防范返回 HTML 错误页(CDC、NCBI 对缺失文件可能返回 200 加 HTML),JSON 解析异常。

使用方式

通过 Bash 编写并运行 Python 代码,按上述格式手册与 API 模式逐步完成下载与解析。ToolUniverse 有 2300+ 工具,可用 find_tools("your topic") 发现未列出的工具。

适用场景

需要批量原始科学数据、工具未覆盖的数据源、工具不支持的格式、多步 API 工作流,或需要远超工具返回条数的记录时。

限制

部分数据源需要注册、申请或资质认证,且有等待时间;部分格式解析依赖第三方库(pysam、rdkit、pyteomics、fcsparser、nibabel、pydicom、python-libsbml 等);具体数据源的访问政策与等待时间以资料所列为准,其他细节暂未提供。