Pipeline - 玩转10x单细胞 | scRNA-seq | scATAC-seq | Spatial transcriptome | CRISPR | Perturb-seq
10x是最成功的单细胞公司,目前最成功的商业平台,已经有很多成熟的单细胞产品线,不管是新手还是进阶的高手都在玩他们平台产生的数据。
这里试图对10x的核心技术和数据来做一个剖析,试图理解其核心原理,加速数据分析进程,辅助科研发现。
我目前玩过的10x数据:
- scRNA-seq (antibody hashtag)
- visum - Spatial transcriptome
- scATAC-seq
- Perturb-seq (CRISPR library)
可玩性非常高,特别是结合具体的临床医学问题。
分析所使用的工具:
- cellranger 【分析常规scRNA-seq,antibody hashtag,Perturb-seq】
- spaceranger 【visum空间转录组数据】
- cellranger-atac 【独立分析ATAC数据】
- cellranger ARC 【联合分析RNA和ATAC,multi-omics】
参考:
单独ATAC
联合分析RNA+ATAC
- What is Cell Ranger ARC? - 官网
- 最新单细胞多组学新产品:ATAC + 基因表达 - 【基本原理】
- 单细胞多组学ATAC- Cell Ranger ARC--count
- 单细胞多组学ATAC-Cellranger ARC-结果解读之网页报告 【有一个系列】
多样本合并:
- gene很好合并,但是peak不行,必须合在一起call peak才行,所以必须在上游就处理完成;
- Aggregating Multiple GEM Wells with cellranger-arc aggr
目录
- QC
- 分析流程(基本+高级)
- 建库原理
- 单细胞展望
- 疑难杂症
分析流程
fastq
【一般测序公司会直接提供,最开始的时候还得自己bcl2fastq】
但fastq的格式每个测序平台会有差异
最常见的格式【所有index都直接放进了R1和R2里,paired end 150bp】:
-rw-r--r-- 1 zxli staff 9.0G Mar 25 2021 UE-D60-BO-2-1_S21_L003_R1_001.fastq.gz -rw-r--r-- 1 zxli staff 5.3G Mar 25 2021 UE-D60-BO-2-3_S23_L003_R2_001.fastq.gz -rw-r--r-- 1 zxli staff 8.2G Mar 25 2021 UE-D60-BO-2-1_S21_L003_R2_001.fastq.gz -rw-r--r-- 1 zxli staff 6.2G Mar 25 2021 UE-D60-BO-2-2_S22_L003_R2_001.fastq.gz -rw-r--r-- 1 zxli staff 5.6G Mar 25 2021 UE-D60-BO-2-4_S24_L003_R2_001.fastq.gz -rw-r--r-- 1 zxli staff 6.2G Mar 25 2021 UE-D60-BO-2-4_S24_L003_R1_001.fastq.gz -rw-r--r-- 1 zxli staff 5.8G Mar 25 2021 UE-D60-BO-2-3_S23_L003_R1_001.fastq.gz -rw-r--r-- 1 zxli staff 6.7G Mar 25 2021 UE-D60-BO-2-2_S22_L003_R1_001.fastq.gz
这时的分析脚本的参数就是:
sampleName=UE-D60-BO-2
--sample=${sampleName}-1,${sampleName}-2,${sampleName}-3,${sampleName}-4
另一种就是index单独存放,可以存成一个fastq,也可以是单独的两个fastq
-rw-r--r-- 1 lizhixin engan 235M Aug 22 12:35 HT29_P1_CRISPR_CKDL220019395-1A_H7MJYDSX5_S1_L003_I1_001.fastq.gz -rw-r--r-- 1 lizhixin engan 259M Aug 22 12:35 HT29_P1_CRISPR_CKDL220019395-1A_H7MJYDSX5_S1_L003_I2_001.fastq.gz -rw-r--r-- 1 lizhixin engan 1.8G Aug 22 12:38 HT29_P1_CRISPR_CKDL220019395-1A_H7MJYDSX5_S1_L003_R1_001.fastq.gz -rw-r--r-- 1 lizhixin engan 1.7G Aug 22 12:41 HT29_P1_CRISPR_CKDL220019395-1A_H7MJYDSX5_S1_L003_R2_001.fastq.gz
这时的分析脚本的参数就是:
--sample=HT29_P1_GEX_CKDL220019394-1A_H7MN2DSX5
cellranger在你填错sample name的时候会提醒你!
cellranger arc资源耗用
某个样品一共50G的fastq,CPU基本吃满10核,内存大概占用40G,跑了7个半小时。
某个样品一共120G的fastq,已经跑了14个小时了。
matrix
10x的诸多测序都是使用三个文件的matrix来存储,放在filtered_feature_bc_matrix里
-rw-r--r-- 1 lizhixin engan 137M Aug 23 00:21 matrix.mtx.gz -rw-r--r-- 1 lizhixin engan 326K Aug 23 00:21 features.tsv.gz -rw-r--r-- 1 lizhixin engan 56K Aug 23 00:21 barcodes.tsv.gz
最新的是For sparse matrices, the matrix is stored in the Market Exchange Format (MEX),防止冗余,文件就只有几百M(~1w细胞 x 3w基因)。
第一列就是行坐标,第二列就是列坐标,省去了字符串,方便压缩。
唯一的字符串,基因名和细胞名则单独存放成文件。
QC
分为:
- 上游QC - cellranger的报告足矣
- 下游QC - 基于count矩阵的QC,也是必不可少
参考:
下游分析downstream
下游的分析标准流程我只用Seurat,API做得好,功能丰富,速度快,完全没有自己开发的必要,工欲善其事必先利其器。
一些个性化的分析就可以用其他工具,Seurat的数据导出也是非常方便,甚至自己可以基于其结构开开发自己的工具。
很多事情必须做严谨,不能糊弄过去,建议做一个tutorial,每次照着分析,评估过关即可。
QC
- doublets
Annotation
参考:
建库原理
最好还是搞懂吧,一切皆是接口,搞懂了自己也可以随便玩。
- scRNA-seq (antibody hashtag)
- visum - Spatial transcriptome
- scATAC-seq
- Perturb-seq (CRISPR library)
单细胞展望
towards the end, the ultimate architecture of life!
疑难杂症
1.找不到chemistry
Log message:
An extremely low rate of correct barcodes was observed for all the candidate chemistry choices for the input: Sample Pool111-2_23 in "/home/lizhixin/project/scRNA-seq/rawData/10x/ApcKO/Day_04_RNA". Please check your input data.
- 1.3% for chemistry SC3Pv3
- 1.3% for chemistry SC3Pv3HT
- 0.1% for chemistry SC3Pv3LT
- 0.1% for chemistry SC5P-R2
- 0.1% for chemistry SC3Pv2[error] Unable to auto-detect chemistry. Sample def 0/Pool111-2_23: Fraction of barcodes on whitelist was at best 1.3
1%, while we expected at least 10.00% for one of the chemistries.
确定了是试剂盒的问题,用的不是正常的10x试剂盒。
参考:
待续~