RNA编辑分析流程

RNA editing

一、reditools软件下载

首先需要安装reditools软件,这是2.0版本的下载链接

wget -c https://github.com/tflati/reditools2.0/archive/master.zip

解压

unzip master.zip

然后软件就安装好啦

但是我准备安装1.0.3版本,代码如下:

wget -c http://sourceforge.net/projects/reditools/files/REDItools-1.0.3.tar.gz
tar -xzvf REDItools-1.0.3.tar.gz

二、reditools工具作用介绍

然后进入reditools文件夹会发现有以下文件:
在这里插入图片描述
首先来介绍以下这些工具的作用:

  1. REDItoolDnaRna.py主要应用来自RNA-Seq和DNA-Seq数据的BAM格式文件,可以单独使用RNA-Seq数据。
  2. REDItoolKnown.py已经开发用于使用已知的编辑信息探索RNA-Seq数据集的RNA编辑潜力。 此类信息可以从DARNED数据库下载,也可以从各种出版物的补充材料中生成。 已知的RNA编辑信息必须存储在TAB文件中。
    3. REDItoolDenovo.py被用于单独使用RNA-Seq数据预测潜在的RNA编辑事件,并且没有关于RNA编辑现象的基因组信息和生物学特性的任何先验加粗样式知识。
    4. REDItoolBlatCorrection.py需要Blat包中的gfServer和gfClient程序。可以使用实用程序faToTwoBit将.2bit格式转换参考文件fasta格式
    5. FilterTable.py根据tabix工具索引的特定注释过滤输入表的位置。过滤后的位置将在每行的开头标记为“#”。要排除这些行,应使用选项-E。功能与GTF注释文件的第三个字段中指示的相同。
    6. AnnotateTable.py根据tabix工具索引的注释文件的各个位置。 根据-c选项,它可以添加1到3个附加列。
    7. SearchInTable.py查找列表或位置表中的各个位置。
    8. selectPositions.py可以根据不同的标准过滤输出REDItool生成的表。
    9. SortTable.py是根据基因组区域和坐标对输入表进行排序的工具。 输入表可以是TAB分隔的或使用任何分隔符。
    10. tableToTabix.py创建一个tabix表,默认情况下对输入表进行排序。 用于从GFF文件生成tabix表以提前为REDItools准备注释表。
    11. SortGFF.py是一个只对GFF文件进行排序并作为SortTable.py工作的工具。
    12. GFFtoTabix.py是一个将GFF文件转换为tabix文件的脚本。
    13. TableToGFF.py是一个将输出REDItool表转换为GFF以便在REDItoolDnaRna.py中用作输入的工具。

三、reditools所需输入文件

  1. BAM文件
    输入BAM应按SAMtools排序和索引进行排序和索引。 或者,REDItools可以使用-I选项对输入BAM进行排序和索引,或者从DNA-Seq数据中选择-J用于BAM。 在排序输入BAM的情况下,REDItools可以自动检查索引文件的存在,如果它们不存在则创建它们。
  2. Fasta格式的参考基因组
    染色体/区域名称必须与输入BAM中的名称相同。 参考Fasta文件必须由SAMtools faidx编制索引
  3. GTF文件包含注释或基因组区域,以包括或从分析中排除
    当用于已知注释时,GTF属性必须包含字段’gene_id’和’transcript_id’。需要通过tabix对GTF文件进行排序和索引。这可以通过标准的unix / linux sort命令,然后是tabix程序或使用REDItools附件脚本来完成 。(optional)
  4. TAB分隔文件,包括基因组位置
    第一列必须包含根据输入BAM和参考基因组的染色体/区域名称,第二列必须包括基因组坐标(基于1),第三列必须指示链(+或 - )。链也可以用数字表示:0(链 - ),1(链+)或2(链未知)。 (optional)
  5. SpliceSite文件包括已知剪接位点的坐标,以排除周围内含子区域中的位置
    REDItools文档中描述了拼接站点的格式和生成此类文本文件的过程。 (optional)

四、reditools通用输出文件格式

  • -Region:根据参考文献的基因组区域;
  • -Position:是确切的基因组坐标(基于1);
  • -Reference:是参考基因组中的核苷酸碱基;
  • -Strand:是链信息,带有符号1表示+链,0表示 - 链,2表示未知或未定义的链;
  • -Coverage-qxx:给定xx质量得分(最小值)的每个位点的深度;
  • -MeanQ:是每个位点的平均质量得分;
  • -BaseCount [A,C,G,T]:是每个位点的基本分布,顺序为A,C,G和T;
  • -AllSubs:是给定位点的观察到的替换列表,以空格分隔。在不变位点的情况下,使用字符“ - ”;
  • -Frequency:是观察到的替代频率。在多次替换的情况下,它指的是AllSubs字段中的第一个。

REDItoolDnaRna.py包括五个额外的列,以考虑DNA-Seq reads的信息。这些列表示为:

  • -gCoverage-qxx:DNA-Seq中给定xx质量得分(最小值)的每个位点的深度;
  • -gMeanQ:DNA-Seq中每个位点的平均质量得分;
  • -gBaseCount [A,C,G,T]:是每个位点的基本分布,顺序为A,C,G和T;
  • -gAllSubs:是给定位点上观察到的替换列表,以空格分隔。字符“ - ”包括在不变位点的情况下;
  • -gFrequency:是观察到的替换频率。在多个替换的情况下,它指的是gAllSubs字段中的第一个。

REDItoolDenovo.py包含一个额外的列:

  • -Pvalue:是根据Fisher精确检验计算的每个位点的p值。它表明观察到的变化的基础分布与预期的不同,通过整个RNA-Seq实验的经验碱基替换计算。
    DNA-Seq reads 不支持的位置用每个额外列的字符“ - ”标记。

五、示例演示

下载测试文件包:testREDItools.tar.gz(http://srv00.recas.ba.infn.it/reditools/data/testREDItools.tar.gz) ,所包含的文件如下:
在这里插入图片描述
1.

REDItoolDnaRna.py \
-i rna.bam \
-j dna.bam \
-f reference.fa \
-o reditool-test \
-c 10,1 -Q 33,64 -q 25,25 \
-m 20,20 -s 2 -g 1 -u -a 6-0 -v 2 -n0.0 -N0.0 -V

对比DNA和RNA的bam文件每个位点,输出相关的信息,程序详细参数:
here
2.

selectPositions.py \
-i outTable_891206177 \
-d 12 -c 2 -C 10 -v 2 -V 0 -f 0.1 -F 1.0 -e -u \
-o candidates.txt

针对每个位点的信息进行筛选过滤,保留潜在的RNA编辑位点,程序详细参数:
here
3.

AnnotateTable.py \
-a ../../rmsk.gtf.gz \
-i candidates.txt \
-u -c 1,2,3 -n RepMask \
-o candidates.rmsk.txt

使用Repeat Mask数据库去寻找Alu位点,程序详细参数:
here
4.

FilterTable.py 
-i candidates.rmsk.txt 
-f ../../rmsk.gtf.gz 
-F SINE -E -o candidates.rmsk.alu.txt -p

保留注释在SINE区域的注释,程序详细参数:
here
5.

AnnotateTable.py \
-a ../../refGene.sorted.gtf.gz \
-i candidates.rmsk.alu.txt \
-u -c 1,2 -n RefSeq \
-o candidates.rmsk.alu.ann.txt

再使用RefSeq数据库注释,输出文件将多出gene_id、transcript_id和feature等列。

以上流程全部基于reditools1 ,reditools2以后我要用到的时候再研究更新。

先整理成这样。后面我再用自己的数据跑一遍流程,有什么问题我在贴上来。

参考网站:
https://www.jianshu.com/p/57a48d4c7bd3
https://www.jianshu.com/p/aac76fb882ad这个提到了安装报错的问题

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值