资源描述
JACUSA说明书
版本1.2
1. 介绍
正确的SNV预测的JAVA构架是一个从比对过的匹配测序样本中检测单核苷酸变异的一步解决方案。可以有效得有力的识别由于人工特异性的NGS数据和使用的比对策略造成的误差。我们实施了不同特性的筛选来减少假阳性的数目。JACUSA采用了一个基于窗口的方法来详细研究带有高度平行过程特性的给定的BAM文件。JACUSA已经强有力的被进行估计和优化来对RNA-DNA和RNA-RNA测序样本进行RNA编辑位点的识别。JACUSA要求一个可操作的Java环境并采用排过序和建立过索引的BAM文件作为输入文件。
2. 安装要求
JACUSA不需要任何配置,但是需要正确配置的Java环境。我们开发并检测JACUSA都是用Java1.7进行的。如果你遇到任何Java相关的问题,请考虑变为Java1,7.
模拟数据的样本
下载我们用来开发JACUSA的样本数据。你可以选择不同的配置和物种,后者对数据的大小尺寸有较大的影响,同时也会对检测样本的运行时间产生影响。GDNA和cDNA的比对代表典型的数据设置,是在检测RNA编辑位点中会使用到的,通过将基因组测序片段和转录组测序片段进行比对可以实现。在这个设置中,变异仅仅被估计在cDNAbam文件中。cDNA和cDNA数据比对设置能够被解释为,表示单个苷酸突变或者不同的RNA编辑的等位基因特异性的表达。在这个设置中,成对发生的变体带有不同的碱基频率,被估计到两个cDNA的bam文件中。除此之外,为了使得识别变异更具有挑战性带有成对的相似的碱基评率的SNP 已经被包括在两个bam文件中。这个位点应该不被是被为真正的位点。GDNA数据已经采用art进行模拟,同时cDNA片段已经采用flux进行模拟。片段模拟已经被全部应用到相关的代表性物种的第一个染色体上。样本数据是可用的。每种实现的方法包括:
GDNA.bam,cDNA.bam BAM 文件:gDNA.bam和cDNA或者cDNA_1.bam和cDNA_2.bam。
snps.txt 仅仅可用于cDNA和cDNA比对。估计的SNP的相匹配参照。在两个bam文件中与SNP匹配有相同目标频率但是影响不同或者样本的评率不同。形成的参数决定了由多少种样本的频率将会从每个BAM文件中的靶向频率衍生出来。后缀——cdna-和—cdna-2分别对应相关的BAM文件。
variant.txt 估计的变异和他们的靶向和样本频率的坐标。
可用的样本数据
3. 输入
3.1比对文件
JACUSA需要比对过和整理过的BAM文件。Bam是一个标准化的文件形式来有效的存储比对的结果。检查说明书的3或者4来知道如何用不同的工具来将你的比对文件转换成有效的JACUSA输入BAM文件。
下面展示的是SAMtools的命令
SAM ! BAM samtools view -Sb mapping.sam > mapping.bam
sort BAM samtools sort mapping.bam mapping.sorted
index BAM samtools index mapping.sorted.bam
它是一个推荐的预处理步骤来移除重复的片段,当进行变体识别的时候。重复的片段的发生大部分是由于PCR的人工操作。它们很有可能包含假的变异并且大部分的数检测要求片段是独立取样的,下面展示的是picardtools的命令
java -jar MarkDuplicates.jar \
I=mapping.sorted.bam O=dedup_mapping.sorted.bam \
M=duplication.info
用额外的命令行选择“-F 1024”调用JACUSA来筛选被复制片段修饰的片段。
3.1.1链信息
在V1.2中,支持连特异性的双末端片段已经被加到JACUSA中。取决于采用的测序数据库,JACUSA能够用链的方向来建立堆栈。
警告:
因为v1.2的“-P”模式已经改变了,所以这个形式已经被TopHat的文库类型的参数激活。
用命令行参数“-P,–build-pileup <BUILD-PILEUP>”,用户能够从下面的结合中进行选择:
FR-FIRSTSTRAND STRANDED library - first strand sequenced,
FR-SECONDSTRAND STRANDED library - second strand sequenced, and
UNSTRANDED UNSTRANDED library.
来定义链信息是否将被用来建立堆栈。
为了通过比较GDNA和连特异性的RNA数据来识别RNA编辑位点(单末端或者双末端)可以用:
first strand sequenced “-P UNSTRANDED,FR-FIRSTSTRAND”
Table 1: Example of BED-like traverse file
contig start end
1 1000 1100
2 10000 10000
second strand sequenced “-P UNSTRANDED,FR-SECONDSTRAND”
当你的RNA测序数据是非连特异性的时候,用“-P UNSTRANDED,UNSTRANDED”并且参照来自于注释信息中的正确额方向。
3.2详细研究BED-like的文件
变体检测能够被限制在特异性的基因组区域或者转录组区域。提供一个
简化的BED-like文件来限制在这个区域或者位点内进行研究、剩下的BAM文件的区域将不会被考虑在内。
在下面的详细文件中,这个研究被限制在重叠群1开始位置1000的100nt的区域内,以及在重叠群2的一致的10000位点上的一个单个核苷酸位点上:HINT:一些独立的位点将会减慢JACUSA的工作进度。如果可以的话,尝试去讲邻近的位点合并到邻近的区域并总JACUSA的输出文件中抓取特异性的位点,可用bedtools交叉实现:
合并位点:bedtools merge -d 500 singular_sites.bed > \
contigous_regions.bed
运行JACUSA
java -jar JACUSA.jar call-2 -b contigous_regions.bed -r
JACUSA.out mapping_1.sorted.bam mapping_2.sorted.bam
提取位点
bedtools intersect -wa -a JACUSA.out -b singular_sites.bed
输出
JACUSA将输出写到一个用户定义的文件或者通道。当使用复杂的线程的时候,JACUSA将会创造一个压缩的临时位点,对于每个指派的线程。选择命令行参数和当前的基因组位点被打印到一个命令的提示中。更过的,依赖于给定的命令行参数,JACUSA将会产生一个被识别为潜在的人工失误的位点的文件,当“-s”被提供的时候。当前,JACUSA支持下面的输出模式,通过“-f”进行控制。
默认(JACUSA输出)
VCF模式
默认文件的输出模式是基于额外的JACUSA特异性列的BED。列的实际数目取决于给定的BAM文件的数目。
(1,2,3)重叠群+起始位点+终止位点 0个碱基的,潜在的变异位点的基因组坐标。
(4)名字 当前的,连续的字符串:“变体”。这个虚拟的区域是用来确保BED6的兼容性。
(5)得分 数据检测 z属于R表示的是它是真实的变体的可能性。数字越大表明更有可能是一个变异。
(6)链 可能的值有“.””+””-“分别对应“非链”“正链”“负链”。如果链是“!=”,然后,下面的基列将根据链指示基计数-如果在“负链”上,则反向基计数。
(7,8)碱基IJ 碱基列的数目取决于BAM文件的数目。在碱基IJ中,I与样本一致,J与代表的复制体一致。数目表示碱基向量(A,T,C,G)的碱基的数目。
(9)信息 关于特定位点的额外的信息。当前,关于狄利克雷多项式的参数估计的细节将会被展示出来。如果没有任何可以提供的,那么空的区域等于“*”
(10)筛除信息 相关的,如果特性筛选X已经被在命令行以“-a X”提供。这一列将会包含一个逗号分开的列表,关于筛选的特性,预测了这个位点将会是潜在的人为误差。可能的值有:
值:描述潜在的人工误差
D:在邻近片段的起始、末端,内含子,或者插入缺失区域检测到的变异
B:在邻近于片段的起始或者末端识别到的变异
I:在邻近插入缺失区域识别到的变异
Y:在邻近同源多具体识别到的变异
M: 超过了允许的最大等位基因
H:对照样本包含非同源的堆叠
d:样本堆叠超过了最大的深度。
4. 用法
调用JACUSA不需要任何声明将会打印出可用的工具,目前有:
java -jarJACUSA.jar
call-1 Call variants - one sample
call-2 Call variants - two samples
pileup SAMtools like mpileup for two samples
usage: jacusa.jar [OPTIONS] BAM1_1[,BAM1_2,BAM1_3,...] BAM2_1[,BAM2_2,BAM2_3,...]
-a,-pileup-filter <PILEUP-FILTER> 堆积过滤器链应用到堆积
B| 更具离片段末端或起始的距离进行过滤,默认:6:0.5(F:距离:最小比例)
R| 稀有事件筛选。默认1:2:0.1(R:pool:reads:level)
S| 根据到剪切位点的距离进行筛选。默认 6:0.5(S:distance:min_ratio)
D| 根据到变短起始或者末端,内含子,插入缺失位置的距离进行筛选。默认5:0.5(D:distance:min_ratio)
H| 筛选非同源的堆叠、bam,在样本1或者2中(必须被设置为H:1或者H:2)。默认:没有。
I | 根据到插入缺失位点的距离筛选。默认:6:0.5(I:distance:min_ratio)
Y| 筛选在邻近同源多聚体位点的错误的变体。默认:7(Y:长度)
L| 最小差异性筛选。默认 0:0:0.1(R:pool:reads:level)
M| 每个平行堆叠允许的最大值。默认:2
将多个不同的PILEUP-FILTER之间用“,”隔开。(例如D,I)
-b,bed<BED>用来浏览变体的BED文件
-C,-base-config <BASE-CONFIG> 选择哪种类型的碱基将被用来进行变体筛选
-c,-min-coverage 筛选位点的覆盖度(最小覆盖度,默认为5)
-c1,-min-coverage1 用覆盖度筛选一种类型的位点。默认值为5
-c2,-min-coverage2 用覆盖度2筛选第二中位点。默认值为5
-d,-max-depth 每个bam文件的最大深度。默认值为-1
-d1,-max-depth1 每个样本1的最大深度。默认为-1
-d2,-max-depth2 每个样本2 的最大深度。默认值为-1
-F,-filter-flags 用标签对片段进行筛选。默认0
-f,-output-format 选择输出形式
<*>D:默认JACUSA
<>V:VCF输出形式。选择-P将会被复制(VCF是链无关的)
-filterNH_1 SMA标签NH的最大的NH值
–filterNH_2 <NH-VALUE>
–filterNM_1 <NM-VALUE> SAM标签NM的最大的NM值
–filterNM_2 <NM-VALUE>
-h,-help 输出使用信息
-i1,invert-strand1 一个样本的反向链,默认
-i2,invert-strand2
-m,-min-mapq 筛除比对得分小于最小比对得分的位置 默认20
-m1,-min-mapq1 对第一类位点进行筛除比对得分小于最小比对得分的位点
-m2,min-mapq2
-P,-build-pileup 选择文库类型以及平行的堆积是如何对样本1和样本2建立起来的
形式:s1,s2
s1和s2可能的值:
FR-FIRSTSTRAND STRANDED library – first strand sequenced
FR-SECONDSTRAND STRANDED library - second strand sequenced
UNSTRANDED UNSTRANDED library
默认UNSTRANDED UNSTRANDED library
-p,threads 用线程,默认1
-q,-min-basq 对碱基质量小于最小碱基质量的位点进行筛除,默认20
-q1,-min-basq1
-q2,-min-basq2
-R,-show-ref 添加参考碱基到输出文件,BAM文件必须要求MD位置
-r,-result-file 结果被写成RESULT-FILE如果是空的话就写到标准输出
-s,-sparate 将特异性筛选的结果放到分开的文件中(=RESULT-FILE.filtered)
-T,-threshold 筛选位置取决于数据检测THRESHOLD,默认值;DO NOT FILTER
-v ,-version 输出版本信息
-W,-thread-window-size 每个线程用到的窗口,默认100000
-w,-window-size 用来缓冲的窗口的大小。确保这个比片段的尺寸大,并小于线程窗口尺寸,默认10000
5.1单样本模式
随着JACUSA1.2版本的引入,单样本支持已经被添加进去,允许对一个参考进行样本的筛选。从内部来看,一个模拟的样本被创造,是通过BAM文件中的MD提供的信息实现的-看samtools说明书关于MD区域的详细信息。单样本的模式要求BAM文件包含MD区域。我们强烈建议用“samtools calmd”来添加或者在BAM文件中对现存的MD区域进行重写:
samtools calmd mapping. sorted.b am reference.fasta > mapping.sorted.MD.bam
形成了MD区域之后,根据参考识别的变异能够被查询,用命令
java -jar JACUSA.jar call-1 -r JACUSA.out mapping.sorted.MD.bam
5.2samtools像mpileup对连个样本进行的筛选
6、RNA编辑位点的识别
用下面的命令行来识别可能提供RNA编辑位点的BAM中RNA-DNA的差异性:
java -jar call-2 -r JACUSA.out -s -a H:1 gDNA.bam cDNA.bam
选择“-a H:1”确保在GDNA中潜在的变异将会被当做人工误差来进行筛除。数字x属于1,2决定了那个样本在这种情况下必须是同种类型的—:GDNA.bam
用下面的位点来识别RNA-DNA差异性
java -jar call-2 -r JACUSA.out -s cDNA1.bam cDNA2.bam
警告:如果你想识别RNA-RNA差异性,请确保不要用到“-a H:x”筛选。否则,潜在的有效的变异将会被筛除掉。
7.使用到的文库
picard tools
展开阅读全文