Evan の Logbook
✨ Updates
🎨 Style Guide
🧠 Creative Resources
🗒️ Mind Notes
🧭 Knowbase
📘 SOPs
🩺 Medical Research
🛠️ Tech Chronicles
💰 Fortune Blueprint
📈 R Visionary
📊 Statistics
🖼️ BioVis
📝AUCell 流程笔记(GSE60361 小鼠脑示例)
type
status
date
slug
summary
tags
category
icon
password
comment
目标:基于 AUCell 对单细胞表达矩阵计算基因集打分,完成阈值探索、细胞指派与可视化;整理为可复用的脚本骨架。
0. 环境与依赖
- R ≥ 4.2;建议使用 renv/conda 固定版本。
- 主要包:
AUCell,GSEABase,Matrix,data.table/readr,NMF,DT,Rtsne。
可选:evanverse 为自定义工具箱;如未安装,请按需注释相关行。
1. 数据读取与预处理
检查点
备注:对真实分析通常不建议随意抽样基因;此处为 vignette 演示。
2. 基因集(GeneSetCollection)准备
2.1 读取示例 GMT 并裁剪到当前矩阵基因名
2.2 追加自定义基因集
检查点
3. AUCell:两种常用调用方式
3.1 一步法(快捷)
3.2 两步法(可控)
buildRankings 会按每个细胞对基因表达排序,calcAUC 基于排名窗口计算 AUC。
4. 结果与阈值探索
4.1 每个细胞的基因数(非零表达)
4.2 阈值探索与指派
4.3 汇总细胞指派矩阵与展示
5. t-SNE / 低维可视化与着色
5.1 计算 t-SNE(或直接加载示例坐标)
5.2 按 AUC 阈值着色(多基因集批量)
6. 可复用包装:一键运行接口
7. 常见坑位与建议
- 行名重复:需去重或聚合(如对同一基因求和/均值);示例采用去重保留第一条。
- 稀疏化:务必转为
dgCMatrix,可显著节省内存并提升 AUCell 速度。
- 基因集覆盖率:
subsetGeneSets先裁剪,避免基因集几乎为空导致阈值异常。
- 阈值选择:同时查看直方图与 UMAP/tSNE 空间分布,必要时手动设阈值并记录。
- 随机性:涉及采样与 tSNE,固定
set.seed确保可复现。
- 可视化:在大数据集上优先抽样展示,避免绘图卡顿。
8. 最小可运行示例(MRE)
9. 会话信息(便于复现)
附:与原始脚本差异/改进点
- 统一使用
expr_mat命名;显式去重策略。
Matrix::rowSums(expr_mat > 0)代替apply,更快。
grep时用value = TRUE返回名称,避免索引错位。
- 将绘图与阈值探索封装为批处理循环,便于扩展。
- 提供
run_aucell_pipeline()便于一键复用。
Prev
scRNAseq
Next
用 readxl 读取 Excel:实践指南 + 可复用增强函数
Loading...
YouTube 使用笔记