一个R包玩转单细胞免疫组库分析,还能与Seurat无缝对接 | 您所在的位置:网站首页 › 单细胞vdj › 一个R包玩转单细胞免疫组库分析,还能与Seurat无缝对接 |
在介绍clonotypr(https://github.com/mattfemia/clonotypr)包之前,我们需要先去解决几个问题: (1)为什么要进行单细胞免疫组库的分析?
每个人都拥有一个自己的适应性免疫组库,TCR和BCR通过基因重组和体细胞突变取得多样性,使得我们身体可以识别和抵御各种内部和外部的入侵者。而肿瘤的发生往往躲避了人体T淋巴细胞而产生、增殖和转移。 使用10X Genomics ChromiumTM Single Cell Immune Profiling Solution可以捕捉肿瘤发生时的免疫微环境变化,寻找免疫治疗的靶点,从而辅助免疫治疗更好地抗击肿瘤。
自身免疫性疾病发生起始和发展的中心环节被认为是抗原特异性T细胞激活导致的,使用10X Genomics ChromiumTM Single Cell Immune Profiling Solution,可以解析自身免疫性疾病的发病机制,从而为疾病的诊疗提供依据。
器官或者骨髓移植时,经常会诱发宿主的排斥反应,从而发生慢性移植抗宿主病。同种异体反应随机分布在整个T细胞组库的交叉反应,因此延迟T细胞恢复和限制的T细胞受体多样性与异体移植后感染和疾病复发风险增加相关。 而我比较注意的是在疫苗接种前后BCR/TCR CDR3免疫组库的分析,最近medRxiv上发表的有关新冠的文献Immune Cell Profiling of COVID-19 Patients in the recovery stage by Single-cell sequencing中对不同BCR/TCR的VDJ重排进行分析,揭示针对新冠特异的克隆扩增。 (2)免疫组库主要包括哪几个方面? T淋巴细胞(T cell)和B淋巴细胞(B cell)主要负责适应性免疫应答,其抗原识别主要依赖于T细胞受体(T cell recptor, TCR)和B细胞受体(B cell recptor, BCR),这两类细胞表面分子的共同特点是其多样性,可以识别多种多样的抗原分子。BCR的轻链和TCRβ链由V、D、J、C四个基因片段组成,BCR的重链和TCRα链由V、J、C三个基因片段组成,这些基因片段在遗传过程中发生重组、重排,组合成不同的形式,保证了受体多样性。其中变化最大的就是CDR3区。 (3)10X Genomics在进行VDJ测序时为什么从5’端开始? 我们都知道3’端首先捕获的是polyA尾,然后其实就是C段恒定区,由于长度限制难以对VDJ段进行测序。(但其实我们在进行10X Genomics3’测序时,也可以发现一些IGH类的基因表达。。。) (4)10× Genomics进行cellranger后的输出形式是什么样的? Outputs:- Run summary HTML: /home/jdoe/runs/sample345/outs/web_summary.html- Run summary CSV: /home/jdoe/runs/sample345/outs/metrics_summary.csv- All-contig FASTA: /home/jdoe/runs/sample345/outs/all_contig.fasta- All-contig FASTA index: /home/jdoe/runs/sample345/outs/all_contig.fasta.fai- All-contig FASTQ: /home/jdoe/runs/sample345/outs/all_contig.fastq- Read-contig alignments: /home/jdoe/runs/sample345/outs/all_contig.bam- Read-contig alignment index: /home/jdoe/runs/sample345/outs/all_contig.bam.bai- All contig annotations (JSON): /home/jdoe/runs/sample345/outs/all_contig_annotations.json- All contig annotations (BED): /home/jdoe/runs/sample345/outs/all_contig_annotations.bed- All contig annotations (CSV): /home/jdoe/runs/sample345/outs/all_contig_annotations.csv- Filtered contig sequences FASTA: /home/jdoe/runs/sample345/outs/filtered_contig.fasta- Filtered contig sequences FASTQ: /home/jdoe/runs/sample345/outs/filtered_contig.fastq- Filtered contigs (CSV): /home/jdoe/runs/sample345/outs/filtered_contig_annotations.csv- Clonotype consensus FASTA: /home/jdoe/runs/sample345/outs/consensus.fasta- Clonotype consensus FASTA index: /home/jdoe/runs/sample345/outs/consensus.fasta.fai- Clonotype consensus FASTQ: /home/jdoe/runs/sample345/outs/consensus.fastq- Concatenated reference sequences: /home/jdoe/runs/sample345/outs/concat_ref.fasta- Concatenated reference index: /home/jdoe/runs/sample345/outs/concat_ref.fasta.fai- Contig-consensus alignments: /home/jdoe/runs/sample345/outs/consensus.bam- Contig-consensus alignment index: /home/jdoe/runs/sample345/outs/consensus.bam.bai- Contig-reference alignments: /home/jdoe/runs/sample345/outs/concat_ref.bam- Contig-reference alignment index: /home/jdoe/runs/sample345/outs/concat_ref.bam.bai- Clonotype consensus annotations (JSON): /home/jdoe/runs/sample345/outs/consensus_annotations.json- Clonotype consensus annotations (CSV): /home/jdoe/runs/sample345/outs/consensus_annotations.csv- Clonotype info: /home/jdoe/runs/sample345/outs/clonotypes.csv- Barcodes that are declared to be targeted cells: /home/jdoe/runs/sample345/out/cell_barcodes.json- Loupe V(D)J Browser file: /home/jdoe/runs/sample345/outs/vloupe.vloupeclonotyprclonotypr是一个R包,旨在使用Seurat(单细胞分析Seurat使用相关的10个问题答疑精选!)作为“骨干”,将V(D)J-seq/单细胞免疫谱数据与scRNA-seq数据的分析连结在一起。除了将克隆型数据附加到对象之外,clonotypr还提供了分析CDR3aa长度、化学组成和频率,以及将单链克隆型重新分配给其'productive'-relatives的策略。 安装if (!require("devtools")) { install.packages("devtools")}install.packages("devtools")devtools::install_github("mattfemia/clonotypr") library(clonotypr)library(kableExtra) # 数据表格格式化clonotypr建立在Seurat对象基础上,其中seurat示例对象如pbmc_vdj 和pbmc_null都已内置于包中。 pbmc_null ->不包含克隆型数据。 pbmc_vdj ->在meta.data中包含克隆型数据。 用于构建“pbmc_null”和“pbmc_vdj”的数据均来自人PBMC,由10X Genomics提供。可在https://support.10xgenomics.com/single-cell-vdj/datasets/3.1.0/vdj_v1_hs_pbmc3找到有关样本、scRNA-seq和VDJ库的更多信息。 处理数据AddClonotypes()和LoadClonotypes()是clonotypr的典型函数: LoadClonotypes():创建一个新的数据框,不需要Seurat对象。 AddClonotypes():将克隆型数据追加到Seurat对象中。 后面的函数将以Seurat为对象进行输入,并且都需要CellRanger输出中的两个文件:
可以使用两个参数将文件进行调用: 上传带有directory参数的目录 使用clonotypeFile(clonotypes.csv)和filteredContigFile(filtered_contigs_annotations.csv)上传文件 我们从Seurat对象开始: head([email protected])[email protected] —— 增加clonotype data之前: head([email protected]) %>% # % kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), font_size = 13) %>% row_spec(0, bold = T, color = "black", background = "white") %>% scroll_box(width = "100%", height = "250px") #生成数据表AddClonotypes() —— 加上clonotype data: clonoFile % row_spec(0, bold = T, color = "black", background = "white") %>% scroll_box(width = "100%", height = "250px")克隆型链DescribeClonotypes可以快速检查样本中克隆型链类型的分布。 DescribeClonotypes(clono)与filtered_contig_annotations.csv文件中的数据相似,clonotypr计算相对于总样本群体的每种克隆型的原始频率和百分比。 freqs % kable() %>% kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), font_size = 13) %>% row_spec(0, bold = T, color = "black", background = "white") %>% scroll_box(width = "100%", height = "250px")nrow(freqs)单链克隆clonotypr还可以处理遇到仅包含α或β链的克隆型的可能情况。那么我们就该想,不是说好的α和β链嘛,为什么只有一条,于是这是10X官方的解释: 在克隆型频率要求样本内具有高精度的情况下,JoinSingleChains可以解决此问题。在此,首先分离各个CDR3alpha和CDR3beta链。然后将那些单链克隆型的频率添加到productive克隆型的频率中,最后仅返回productive克隆型和频率。 prod_freqs % kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), font_size = 13) %>% row_spec(0, bold = T, color = "black", background = "white") %>% scroll_box(width = "100%", height = "250px")nrow(prod_freqs)CDR3链长度可以使用clonotypr进行分析: AnalyzeCDR3Length()->表格输出 PlotLengths()->可视化输出 长度表生成将细胞barcodes与频率数据合并的表格: barcodefreqs PPM热图列表PlotPWM()-> PWM热图列表 matrices |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |