前言
??一不小心2020年又過完了,回望這一年的收獲,算了,還是不回望了。作為2020年的最后一貼,今天來跟大家談談如何分析TCR-seq的數據,全稱T-cell receptor sequencing。該方法誕生的目的就是用生物信息學手段來全面高速地分析高通量測序技術檢測靶向擴增后的T細胞抗原識別決定性表面分子,即T細胞受體多樣性的檢測技術,用以揭示機體在生理和病理狀態下T細胞介導的細胞免疫應答狀態改變。如下面的示意圖所示,T細胞介導的細胞免疫應答過程中,抗原呈遞細胞(antigen-presenting cell,APC)攝取抗原(Ag)、消化形成抗原-MHC分子復合物,并呈遞給T細胞。T細胞通過自身T細胞受體β鏈中V-D-J基因重排后的CDR3β參與抗原識別。
??(TCR的基因由可變區(V)、多變區(D)、結合區(J)和恒定區(C)四部分基因片段組成,形成互補決定區(complementarities determining region, CDR)和間隔的4個骨架區(framework region, FR),基因結構如下圖所示。在T細胞發育過程中CDR1、2和FR區域相對保守,CDR3區由V、D和J 進行重排而形成具有功能的TCR編碼基因(T細胞克隆),由于V(65~100種)、D(2種)、J(13種)基因片段本身具有多樣性,此外,由于在重排的過程中,在VD及D-J的連接區經常有非模板的核苷酸的隨機插入或刪除,進一步增加了CDR3區的多樣性。這種基因片段連接的不準確性使TCR的表達呈多樣性,以識別各種不同的抗原。
分析
??目前,TCR-seq的數據有多種建庫方式,根據建庫方法的不同分別可以以DNA和RNA做為起始原料,兩種材料都各有優缺點,由于研究mRNA可以獲得最終的TCR產物,所以目前許多NGS方法都是以RNA作為起始材料而設計的。同時,RNA為起始材料還可以對整個J基因和V基因進行測序,并提供表達水平的信息。雖然不同建庫方法會得到不同的數據,但對我們分析來都一樣,為什么呢?因為有人已經考慮到這些了,將分析所有數據類型的功能都打包到同一個軟件里面了,用起來也是相當的簡單方便,這就是分析TCR-seq數據非常有名的軟件——MiXCR。
??MiXCR是基于java平臺開發,所以可以免于安裝,下載加壓后即可直接使用。同時,該軟件提供了一個 analyze
模式,可以一站式完成(align, assemblePartial, extend, assemble, assembleContigs and export) 這些分析。不過analyze
模式分為兩種情況,一種是數據為mRNA轉錄組數據時用shotgun
子命令,示例代碼如下:
mixcr analyze shotgun
-s <species> \
--starting-material <startingMaterial> \
[OPTIONS] input_file1 [input_file2] analysis_name
另一種是數據來自于TCR-seq建庫方式時用amplicon
子命令,示例代碼如下:
mixcr analyze amplicon
-s <species> \
--starting-material <startingMaterial> \
--5-end <5End> --3-end <3End> \
--adapters <adapters> \
[OPTIONS] input_file1 [input_file2] analysis_name
除了上述的一步式分析外,也可以用分步的方式完成分析,代碼如下所示:
mixcr align -s <species> -p <aligner> \
-OvParameters.geneFeatureToAlign=<vFeatureToAlign> \
-OvParameters.parameters.floatingLeftBound=false \
-OvParameters.parameters.floatingRightBound=false \
-OvParameters.parameters.floatingRightBound=false \
[align options] input_R1.fastq [input_R2.fastq] my_analysis.vdjca
# assemble overlapping fragmented sequencing reads
mixcr assemblePartial [assemblePartial options] my_analysis.vdjca my_analysis.rescued_1.clna
mixcr assemblePartial [assemblePartial options] my_analysis.rescued_1.vdjca my_analysis.rescued_2.clna
# impute germline sequences for good TCR alignments
mixcr extend [extend options] my_analysis.rescued_2.vdjca my_analysis.rescued_2.extended.vdjca
# assemble CDR3 clonotypes
mixcr assemble --write-alignments [assemble options] my_analysis.rescued_2.extended.vdjca my_analysis.clna
# assemble contigs: execute only if --assembleContigs is specified
mixcr assembleContigs [assembleContigs options] my_analysis.clna my_analysis.clns
# export to tsv
mixcr exportClones [export options] my_analysis.clns my_analysis.txt
??其中assemblePartial
和extend
兩個步驟對于TCR-seq等靶向測序的數據是可選的步驟,可以省略,但對于mRNA轉錄組和非靶向的數據是需要包含的。
??最終分析完成后,如采用的是一步式分析方式,會得到類似如下的結果:
mixcr
├── SPX6730-1.clns
├── SPX6730-1.clonotypes.ALL.txt
├── SPX6730-1.clonotypes.IGH.txt
├── SPX6730-1.clonotypes.IGK.txt
├── SPX6730-1.clonotypes.IGL.txt
├── SPX6730-1.clonotypes.TRA.txt
├── SPX6730-1.clonotypes.TRB.txt
├── SPX6730-1.clonotypes.TRD.txt
├── SPX6730-1.clonotypes.TRG.txt
├── SPX6730-1.extended.vdjca
├── SPX6730-1.report
├── SPX6730-1.rescued_0.vdjca
├── SPX6730-1.rescued_1.vdjca
└── SPX6730-1.vdjca
??其中以‘txt’結尾的是細胞受體的克隆類型表格,這些表格就是想要的結果,大家根據表格的名字也能猜到表格都存儲的是什么數據,這里我就不再贅述了。以‘report’結尾的文件記錄了運行的參數以及是否完成等情況,類似log文件。其他則是一些中間步驟生成的二進制文件。
最后
??MiXCR用起來相當方便,功能也十分強大,基本滿足了我們對TCR-seq數據的基礎分析。如果大家有什么特別的要求可以參考官方文檔:https://mixcr.readthedocs.io/en/latest/index.html。下一期分享如何對基礎結果做進一步的分析。
參考:
https://www.sohu.com/a/310928637_100126902
http://www.seqhealth.cn/list/26.html