[ PROMPT_NODE_27270 ]
Scanpy API 参考
[ SKILL_DOCUMENTATION ]
# Scanpy API 快速参考
按模块组织的常用 scanpy 函数快速参考。
## 导入约定
python
import scanpy as sc
## 读取和写入数据 (sc.read_*)
### 读取函数
python
sc.read_10x_h5(filename) # 读取 10X HDF5 文件
sc.read_10x_mtx(path) # 读取 10X mtx 目录
sc.read_h5ad(filename) # 读取 h5ad (AnnData) 文件
sc.read_csv(filename) # 读取 CSV 文件
sc.read_excel(filename) # 读取 Excel 文件
sc.read_loom(filename) # 读取 loom 文件
sc.read_text(filename) # 读取文本文件
sc.read_visium(path) # 读取 Visium 空间数据
### 写入函数
python
adata.write_h5ad(filename) # 写入 h5ad 格式
adata.write_csvs(dirname) # 写入 CSV 文件
adata.write_loom(filename) # 写入 loom 格式
adata.write_zarr(filename) # 写入 zarr 格式
## 预处理 (sc.pp.*)
### 质量控制
python
sc.pp.calculate_qc_metrics(adata, qc_vars=['mt'], inplace=True)
sc.pp.filter_cells(adata, min_genes=200)
sc.pp.filter_genes(adata, min_cells=3)
### 归一化与转换
python
sc.pp.normalize_total(adata, target_sum=1e4) # 归一化至目标总和
sc.pp.log1p(adata) # Log(x + 1) 转换
sc.pp.sqrt(adata) # 平方根转换
### 特征选择
python
sc.pp.highly_variable_genes(adata, min_mean=0.0125, max_mean=3, min_disp=0.5)
sc.pp.highly_variable_genes(adata, flavor='seurat_v3', n_top_genes=2000)
### 缩放与回归
python
sc.pp.scale(adata, max_value=10) # 缩放至单位方差
sc.pp.regress_out(adata, ['total_counts', 'pct_counts_mt']) # 回归掉不需要的变异
### 降维 (预处理)
python
sc.pp.pca(adata, n_comps=50) # 主成分分析
sc.pp.neighbors(adata, n_neighbors=10, n_pcs=40) # 计算邻域图
### 批次校正
python
sc.pp.combat(adata, key='batch') # ComBat 批次校正
## 工具 (sc.tl.*)
### 降维
python
sc.tl.pca(adata, svd_solver='arpack') # PCA
sc.tl.umap(adata) # UMAP 嵌入
sc.tl.tsne(adata)