今天就跟大家聊聊有关find_circ中如何识别环状RNA,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
1. 比对参考基因组
官方的pipeline使用的是bowtie2软件,代码如下
bowtie2 -p16 \--very-sensitive \--score-min=C,-15,0 \--mm \-x hg19 -q \-1 R1.fastq.gz -2 R2.fastq.gz \2> bowtie2.log \| samtools view -hbuS - \| samtools sort - accepted_hits
最终生成了一个排序之后的bam文件,其实这一步选择其他的比对软件,比如hisat也是可以的,只需要产生bam文件就可以了。
2. 提取没比上参考基因组的序列
采用samtools软件提取没比对上的序列,代码如下
samtools view -hf 4 accepted_hits.bam | samtools view -Sb - > unmapped.bam
3. 从序列两端提取锚点序列
代码如下
unmapped2anchors.py unmapped.bam anchor.fq
4. 将锚点序列比对参考基因组
bowtie2 -p 16 \--reorder \--mm \--score-min=C,-15,0 \-q -x human_bowtie2_index \-U anchor.fq \-S align.sam
5. 预测circRNA
代码如下
cat align.sam | find_circ.py -G hg19.fa -p hsa_ > splice_sites.bed
结果如下所示
-p
参数指定的是第四列内容的前缀,建议指定为物种对应的三字母缩写,需要注意的是,在sites.bed
中同时包含了环状RNA和线性RNA,环状RNA的名称用circ
标识,线性RNA的名称用norm
标识。
6. 结果筛选
根据以下规则对结果进行筛选
根据关键词CIRCULAR筛选环状RNA
去除线粒体上的环状RNA
筛选unique junction reads数至少为2的环状RNA
去除断裂点不明确的环状RNA
过滤掉长度大于100kb的circRNA,这里的100kb为基因组长度,直接用环状RNA的头尾相减即可
代码如下
grep CIRCULAR splice_sites.bed | \grep -v chrM | \ awk '$5>=2' | \grep UNAMBIGUOUS_BP | \grep ANCHOR_UNIQUE | \./maxlength.py 100000 \> circ_candidates.bed
看完上述内容,你们对find_circ中如何识别环状RNA有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网行业资讯频道,感谢大家的支持。