GLIPH寻找共享抗原特异性的TCR
GLIPH (Grouping of Lymphocyte Interactions by Paratope Hotspots)是Davis课题组开发的用来对TCR序列聚类的算法。假设我们收集了不同个体在感染某种病原体后或者某种癌症病人的TCR序列(bulk TCRseq或single cell TCRseq得到的数据都可以),我们想知道某类TCR序列是否可以识别病原体或者肿瘤新生抗原产生某种特定的肽段,就可以用到GLIPH算法。如果结合每个病人的HLA分型,还可以计算某种特定HLA分型是否更加频繁的呈递该肽段。
软件是perl写的,安装很简单,直接下载解压就可以了。输入文件有两个,TCR序列文件和HLA分型文件。这里我下载了GLIPH原文附件里的示例数据,包含了来自49个样本,3个不同HLA分型, 以及7个不同抗原肽段共2067个CDR3序列,如下:
CDR3b TRBV TRBJ CDR3a TRAV TRAJ patient counts
CASSSRSSYEQYF TRBV TRBJ NA NA NA 1oga 3
CASSPVTGGIYGYTF TRBV TRBJ NA NA NA 3gsn 3
CSARDGTGNGYTF TRBV TRBJ NA NA NA 3o4l 3
CASRPDGRETQYF TRBV TRBJ NA NA NA subject.0275 3
CASSETGFGNQPQHF TRBV TRBJ NA NA NA subject.0275 3
CASSLAPGATNEKLFF TRBV TRBJ NA NA NA subject.0275 3
CASSLAPGTTNEKLFF TRBV TRBJ NA NA NA subject.0275 3
CASSLGMFNTEAFF TRBV TRBJ NA NA NA subject.0275 3
CASSNLPGTVEAFF TRBV TRBJ NA NA NA subject.0275 3
HLA分型:
patient HLA
1oga HLA-A2
3gsn HLA-A2
3o4l HLA-A2
subject.0275 HLA-A2
subject.0275 HLA-A2
subject.0275 HLA-A2
subject.0275 HLA-A2
subject.0275 HLA-A2
subject.0275 HLA-A2
运行分两步,第一步进行聚类,这里有一些参数可以设置,比如去掉太短的CDR3,严格要求CDR3起始和终止氨基酸等。
gliph-group-discovery.pl --tcr mytcrtable.txt
第二步对聚类的结果进行统计学显著计算,简单来说就是得到的每个聚类的类型是否收敛。显著性分值的计算比较复杂,它实际上是一个综合评分,这里就不展开了,感兴趣的可以去读原文。
gliph-group-scoring.pl --convergence_file TCR_TABLE-convergence-groups.txt \
--clone_annotations TCR_TABLE \
--hla_file HLA_TABLE \
--motif_pval_file TCR_TABLE.minp.ove10.txt
看一下运行的结果。主要的结果有两个,首先是convergence groups,如下所示,每一行就是一个聚类,第一列是聚类的大小,第二列是聚类的名字,第三列是属于这一类的TCR序列。可以看到有一个cluster(CRG-CASSQSPGGPQYF)有43个TCR序列,这就很有意思,可能识别同一个抗原肽段。
1 CRG-CAWSVGGGLETQYF CAWSVGGGLETQYF
2 CRG-CASSLNPRQGRDEQFF CASSLNPRQGRDEQFF CASSLNPRQGRDEQYF
1 CRG-CASSVDGSGVTYEQYF CASSVDGSGVTYEQYF
1 CRG-CASSHSSGGMSTEAFF CASSHSSGGMSTEAFF
1 CRG-CASMTGTEAFF CASMTGTEAFF
1 CRG-CASSSRGTYEQYF CASSSRGTYEQYF
1 CRG-CASSPWVSGDTQYF CASSPWVSGDTQYF
43 CRG-CASSQSPGGPQYF CASSQSPGGLTFF CASPRQSPLHF CASGQSPGGTQYF CASSQSPGGFQYF CASSQSPGGVAFF CASSQSPGDTQYF CASSQSPGSTQYF CASRQSPGGTQYF CASSQSPGGIQYF CASSQSPSGTQYF CASSQSPGGTQNF CASSQSPDGTQYF CSAPGPGGTEAFF CASSQTPGGTQYF CASSQSPGGTQYF CASSQSPGGTQHF CASSQSPGGTPYF CASNQSPGGTQYF CASSQSPGGTQSF CASSQSPGGLETF CASSQSPGGFQFF CASSQSPGGKQYF CASSQSPGGTRYF CASSQSLGGTQYF CASSQSPGGEQYF CTSSQSPGGTQYF CASSQPPGGTQYF CASSQFPGGTQYF CANSQSPGGTQYF CASSHSPGGTQYF CASSYPSNPGGTEAFF CASSQSPGGAQYF CASSQSPGGVQYF CASSQSPGATQYF CASSQSPGGQQFF CASSRSPGGTQYF CARSHSPGGTQYF CASCQSPGGTQYF CASSQSPVGTQYF CASSQSPGGEQFF CASSQSPGGMQYF CASSQSSGGTQYF CASSQSPGGPQYF
然后就是统计计算的结果。这里我们看一下CRG-CASSQSPGGPQYF这个cluster的分值。可以看到它有43个TCR序列,来自13个样本,总共有52个克隆,CRG_Score就是它的分值了。
Name CDR3s Subjects Clones CRG_Score Vb_p CDR3_p HLA_p Expansion_p Motif_p Size_p HLA Motifs
CRG-CASSQSPGGPQYF 43 13 52 3.0838313378496e-15 0.0001 0.0001 0.26897 0.673 0.001 2.6619e-05 SQSP(37, 0.001) QSP(42, 0.001) PGGT(28, 0.001) QSPG(38, 0.001)
最后需要注意的是参考数据集是可以自定义的,这里我用了默认的参考数据,有条件的可以自行对healthy donor进行测序。
References:
https://www.nature.com/articles/nature22976#Sec23
https://github.com/immunoengineer/gliph