Find_circ工具是最早利用高通量测序数据预测环状RNA的开山鼻祖。该工具是Memczak等人2013年在权威Nature杂志上发表题为“CircularRNAs are a large class of animal RNAs with regulatory potency”的文章时首次发布的,从而掀起了环状RNA的研究热潮。
它的工作流程是:和参考基因组比对完之后,首先剔除和基因组完全比对的reads,保留没比对上的reads, 这部分reads 直接比是比对不上基因组的,因为其来自不同的外显子区域,直接比对的话不允许这么大片段的缺失,那么如何区分剪切的spliced read 和 来自环状RNA的junction read呢,从上面的示意图我们可以直接看出,spliced read 的两部分比对在基因组上的前后位置和转录本中的位置保持一致,而来自circRNA的junction read 其比对的位置是相反的;具体操作的时候,首先从junction read的5'端和3'端取一部分序列,分别叫做5' anchor 和 3" anchor, 如果两个序列比对的位置是相反的,这条reads 就是一个可能的junction read, 然后将anchor read 一直延伸,直到连接处为止,如果到连接处为止序列都能够完全匹配,再看连接点处的剪切模式是否符合AG-GT的剪切模式,如果以上条件都满足,就认定这是一个circRNA。(其实我在这里是疑惑的,一定要AG-GT的剪切模式吗,我看有的文章还有别的剪切模式,如果是这样,感觉这个方法会预过滤掉一批circRNA数据)
===下载和安装====
下载:https://github.com/marvin-jens/find_circ
Find_circ需要运行在装有python 2.7的64位系统上,同时需要安装numpy和pysam这两个python模块。其运行需要借助bowtie2和samtools来完成基因组mapping的过程。
====测试====
第一步:比对
bowtie2 -p 40 --very-sensitive--score-min=C,-15,0 --mm -x K326 -q -1 CK_0_1_1.fq.gz -2 CK_0_1_2.fq.gz -S CK_0_1.sam
samtools-1.9/samtools view -hbuS -o CK_0_1.bam CK_0_1.sam
samtools-1.9/samtools sort -@ 30 CK_0_1.bam -o CK_0_1.sort.bam
第二步:提取没有比对上的序列
samtools-1.9/samtools view -hf 4 CK_0_1.sort.bam | samtools-1.9/samtools view -Sb - > CK_0_1.unmapped.bam
第三步:从序列两端提取锚点序列(anchor)
source activate python27
python unmapped2anchors.py CK_0_1.unmapped.bam | gzip > CK_0_1.anchor.fq.gz
第四步:将锚点序列比对参考基因组
bowtie2 -p 40 --reorder --mm --score-min=C,-15,0 -q -x K326 -U CK_0_1.anchor.fq.gz -S CK_0_1.align.sam
第五步:预测circRNA
cat CK_0_1.align.sam | python find_circ.py -G Nitab-v4.5_genome_Scf_Edwards2017.fasta -p Nitab_ -n CK_0_1 -s CK_0_1_stats.txt -R CK_0_1_spliced_reads.fa > CK_0_1_splice_sites.bed
splice_sites结果如下图所示:
-p参数指定的是第四列内容的前缀,建议指定为物种对应的三字母缩写,需要注意的是,在sites.bed中同时包含了环状RNA和线性RNA,环状RNA的名称用circ标识,线性RNA的名称用norm标识。
第六步:结果过滤与筛选
我看网上建议的过滤标注如下:
根据关键词CIRCULAR筛选环状RNA
去除线粒体上的环状RNA
筛选unique junction reads数至少为2的环状RNA
去除断裂点不明确的环状RNA
过滤掉长度大于100kb的circRNA,这里的100kb为基因组长度,直接用环状RNA的头尾相减即可
grep CIRCULAR CK_0_1_splice_sites.bed | grep -v chrM | awk '$5>=2' | grep UNAMBIGUOUS_BP | grep ANCHOR_UNIQUE | python maxlength.py 100000 > CK_0_1_circ_candidates.bed
本文使用 文章同步助手 同步