pvactools(pvacseq) 使用说明

pVACtool是一个癌症免疫治疗工具套件,由四个工具组成,分别是pVACseq、pVACfuse、pVACvector和pVACviz。其中pVACseq是一个癌症免疫疗法流程,用于从肿瘤突变中识别并优化候选的肿瘤抗原。这里介绍pVACseq-docker (DNA)的使用。

官网:pVACseq — pVACtools 4.0.5 documentation

下载(不用安装)

docker pull griffithlab/pvactools

使用

输入文件(vcf)处理

官网看起来很麻烦,共5个步骤,每个步骤似乎很多步,但其实还好,主要步骤仅1个。

1. 需要提供GT,(一般vcf都有,不用处理);

2. 采用两个插件进行vep注释;

注意:若未安装vep,先安装vep,再进行以下操作。

    1)安装相关插件到指定目录

docker run -v /VEP plugins directory/:/work/ griffithlab/pvactools pvacseq install_vep_plugin /work/

或者:

    进入docker,运行pvacseq install_vep_plugin <VEP plugins directory>

    2)vep注释 --plugin Frameshift --plugin Wildtype --tsl

docker run --user root -v /data/database/vep_data/:/root/.vep/ -v /data/database/:/database/ -v /data_storage1/new_pipeline_RD/HLA/:/work --rm ensemblorg/ensembl-vep:release_104.1 vep -i /work/test.vcf -o /work/test.vep.vcf --format vcf --vcf --cache --refseq  --exclude_predicted --transcript_filter "not stable_id match NR_" --force_overwrite --pick --fork 4 --offline --assembly GRCh38 --fasta /database/GRCh38/Homo_sapiens.GRCh38.dna.primary_assembly.fa.gz --plugin Frameshift --plugin Wildtype --tsl

3. 需要AD, DP, and AF(一般vcf都有)

    若无AD,DP,AF,但有DP4和VAF,则可命令行处理:

less test.vcf|perl -ne '{chomp; if(/^#/){print $_,"\n";}else{@a=split; $f=$a[8]; @fs=split /:/, $f; @vn=();foreach $v(@a[9..$#a]){@vs=split /:/, $v; for($i=0;$i<@fs;$i++){if($fs[$i] eq "DP4"){@d=split /,/, $vs[$i]; $d=$d[0]+$d[1]+$d[2]+$d[3]; $ad=($d[0]+$d[1]).",".($d[2]+$d[3]);} } push @vn, join(":", $v, $d, $ad); } $f=~s/VAF/AF/; $f.=":DP:AD"; print join("\t", @a[0..7], $f, @vn),"\n";} }'|less >test.addAD.vcf

bgzip test.addAD.vcf

tabix test.addAD.vcf.gz

 4. 其他(表达数据和phased vcf)可选,但考虑准确性,官网强烈建议进行phased vcf。

运行

只分析MHC_Class_I:
docker run -v /local_data/:/work/ griffithlab/pvactools pvacseq run --iedb-install-directory /opt/iedb/ -e1 8,9,10,11 /work/test.addAD.vcf.gz TUMOR HLA-A*24:02,HLA-B*48:01,HLA-C*07:02 NNalign NetMHC NetMHCIIpan NetMHCcons NetMHCpan PickPocket SMM SMMPMBEC SMMalign /work/test_outdir

注意:

1. TUMOR是样本名,与对应vcf文件对应。

2. 一定要指定IEDB本地路径:--iedb-install-directory /opt/iedb/, 不然刚开始能跑通,但调用过多后会报错,Error posting request to IEDB. You don't have permission to access /tools_api/mhci/ on this server.

参数测试

测试参数--normal-sample-name NORMAL

结果:与无该参数的结果一模一样,但速度貌似要快一些(24min)。

测试allele:

对比HLA各一个(HLA-A*24:02,HLA-B*48:01,HLA-C*07:02)和杂合2个分型(HLA-A*24:02,HLA-A*02:06,HLA-B*48:01,HLA-B*40:01,HLA-C*07:02,HLA-C*08:01)

运行命令:

docker run -v /local_dir:/work/ griffithlab/pvactools pvacseq run -t 8 -e1 8,9,10 --iedb-install-directory /opt/iedb/ /work/t.vcf.gz TUMOR HLA-A*24:02,HLA-B*48:01,HLA-C*07:02 NetMHCcons /work/test_out -m median -b 1000 -c 1 --fasta-size 100 --downstream-sequence-length 100

docker run -v /local_dir:/work/ griffithlab/pvactools pvacseq run -t 8 -e1 8,9,10 --iedb-install-directory /opt/iedb/ /work/t.vcf.gz TUMOR HLA-A*24:02,HLA-A*02:06,HLA-B*48:01,HLA-B*40:01,HLA-C*07:02,HLA-C*08:01 NetMHCcons /work/test_out_all -m median -b 1000 -c 1 --fasta-size 100 --downstream-sequence-length 100

运行时间:前者8分钟,后者13分钟;

结果:后者多预测很多新抗原,且得分低很多,前40个中仅3个被前者预测出来;前者的很多新抗原结果后者未预测出来。


报错

报错The two methods NetMHCpan and NetMHC produced different outputs, number of peptides not the same:

1 经测试,重新运行又成功,可能是随机错误;同见https://github.com/griffithlab/pVACtools/issues/324

2 为简化运行,参照https://github.com/griffithlab/pVACtools/issues/328修改参数:

docker run -v /local_dir/:/work/ griffithlab/pvactools pvacseq run -t 8 -e 8,9,10 -m median -b 1000 -c 1 --fasta-size 100 --downstream-sequence-length 100 --iedb-install-directory /opt/iedb/ /work/t.vcf.gz TUMOR HLA-A*24:02,HLA-B*48:01,HLA-C*07:02 NetMHCcons /work/test_out - 

运行成功,时间节省2/3(8min);该命令大部分样本不再报错,但偶尔个别样本仍报同样的错,经重跑又成功。

结果对比:

1)预测的新抗原序列大部分一样,除了前4个有3个一样外,其他的顺序不一样;

2)打分不一样,简化后(仅NetMHCcons )的打分低一些(最低26分),原始(多算法)打分高一些(最低107分)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容