用cmscan挖掘ncRNA信息

简介: 0.准备工作:获取Rfam种子获取Rfam的claninfo软件安装待处理物种的基因组文件新建一个专门用于处理RNA的文件夹mkdir Cmscan获取种子和chanin文件下载Rfam种子:axel -q ftp://ftp.

0.准备工作:

  1. 获取Rfam种子
  2. 获取Rfam的claninfo
  3. 软件安装
  4. 待处理物种的基因组文件

新建一个专门用于处理RNA的文件夹mkdir Cmscan

获取种子和chanin文件

下载Rfam种子:

axel -q ftp://ftp.ebi.ac.uk/pub/databases/Rfam/13.0/Rfam.cm.gz

下载clanin文件:

wget ftp://ftp.ebi.ac.uk/pub/databases/Rfam/13.0/Rfam.clanin

软件安装

用conda安装infernal软件

conda install infernal

源码安装

http://eddylab.org/infernal/

官网提供可下载的源码和User's Guide,相当人性化了。并且mac系统也可以使用brew安装infernal。

准备基因组文件

将待处理的基因组文件软链接到Cmscan文件夹下:

ln -s /path/to/file.fa


1.建库

cmpress Rfam.cm

2.确定基因组大小

esl-seqstat my-genome.fa

其输出结果中有一行,类似于Total # of residues: 3000000是我们需要的。考虑到基因组为双链和下一步用到的参数的单位为Million,我们使用公式3000000 * 2 / 1000000计算得出结果为6,作为下一步参数-Z的值.

tips:esl-seqstat命令是hmmer的一个插件,如果没法全局调用则建议直接locate esl-seqstat查找绝对路径。在我的服务器上它在的位置是/media/newdisk/interproscan-5.28-67.0/bin/hmmer/hmmer3/3.1b1/easel/miniapps/esl-seqstat

当然,有可能是因为我的interproscan没装好导致没法直接使用。。

3.运行程序(两个示例)

nohup cmscan -Z 208 --cut_ga --rfam --nohmmonly --tblout kfl.tblout --fmt 2 --clanin /media/newdisk/Cmscan/Rfam.clanin Rfam.cm /media/newdisk/lunzao/KFL/120824_klebsormidium_Scaffolds_v1.0.fna > kfl.cmscan &

nohup cmscan -Z 3503 --cut_ga --rfam --nohmmonly --tblout chara.tblout --fmt 2 --clanin /media/newdisk/Cmscan/Rfam.clanin Rfam.cm /media/newdisk/lunzao/Chara/dailydata/chara_genome.fasta > chara.cmscan &

  • 因为比较耗时所以建议使用nohup命令来跑

  • -Z:查询序列的大小,以M为单位。由esl-seqstat算出或自己写程序计算,记得乘以2,除以10^6

  • --cut_ga: 输出不小于Rfam GA阈值的结果。这是Rfam认证RNA家族的阈值,不低于这个阈值的序列得分被认为是真同源序列。The bit score gathering threshold (GA cutoff), set by Rfam curators when building the family. All sequences that score at or above this threshold will be included in the full alignment and are believed to be true homologs to the model

  • --rfam: run in “fast” mode, the same mode used for Rfam annotation and determination of GA thresholds.

  • --nohmmonly: all models, even those with zero basepairs, are run in CM mode (not HMM mode). This ensures all GA cutoffs, which were determined in CM mode for each model, are valid.

  • --tblout: table输出。

    --fmt 2: table输出的一种格式。

    --clanin: 下载的clan信息。This file lists which models belong to the same clan. Rfam clans are groups of models that are homologous and therefore it is expected that some hits to these models will overlap. For example, the LSU rRNA archaea and LSU rRNA bacteria models are both in the same clan.

4.结果处理

在filename.tblout文件中,有一栏是olp,表示查询序列的重叠信息:

*表示同一条链上,不存在与此查询序列重叠的序列也在Rfam数据库有匹配,这是需要保留的查询序列。

^表示同一条链上,不存在比此查询序列与Rfam数据库匹配更好的序列,也需要保留。

=表示同一条链上,存在比此查询序列与Rfam数据库匹配更好的序列,应忽略。

因此应将搜索到=的行给去除掉

grep -v '=' my-genome.tblout >my-genome.deoverlapped.tblout

将文件处理成excel的形式,只保留我们需要的信息

awk 'BEGIN{OFS="\t";}{if(FNR==1) print "target_name\taccession\tquery_name\tquery_start\tquery_end\tstrand\tscore\tEvalue"; if(FNR>2 && $20!="=" && $0!~/^#/) print $2,$3,$4,$10,$11,$12,$17,$18; }' my-genome.tblout >my-genome.tblout.final.xls

tip:若不设置--cpu的话会默认使用全部线程。

awk 'BEGIN{OFS=FS="\t"} ARGIND==1{a[$2]=$4;} ARGIND==2{type=a[$1]; if(type=="") type="Others"; count[type]+=1;} END{for(type in count) print type, count[type];}' Rfam_anno_class.txt my-genome.tblout.final.xls

参考:

https://www.jianshu.com/p/89d8b72d9bd5

http://rfam.xfam.org/search/type

https://blog.csdn.net/qazplm12_3/article/details/73380016

https://mp.weixin.qq.com/s/5OIRHA22ZLr5Z8bEhDiBqg

http://blog.genesino.com/2017/06/Rfam/

http://rfam.readthedocs.io/en/latest/genome-annotation.html

相关文章
|
数据采集 分布式计算 DataWorks
数据分析之「数据探查」—帮您快速掌握数据情报
为了帮助用户一眼看穿当前数据的质量、结构、分布、统计信息,Dataworks数据分析系统提供了数据探查这个情报管家。它支持探查概览、支持探查详情、支持数据筛选、支持数据刷新、支持数据分布直方图动态装箱和多级下钻!我们会在电子表格顶部以图形和富文本的形式,智能展示每列数据类型和值分布的概览情况;同时,也支持切换到详细模式,查看更多更全面的数据信息。
2487 0
|
10天前
|
存储 索引
打造个人知识管理系统:从信息收集到知识应用
【9月更文挑战第10天】在信息爆炸的时代,如何高效地管理和利用信息成为现代人面临的一大挑战。本文将介绍如何构建一个个人知识管理系统,包括信息收集、整理、存储和检索的全过程。我们将探讨使用数字工具进行信息管理的方法,并分享一些实用的技巧和策略。无论你是学生、职场人士还是终身学习者,这些方法都将帮助你更好地管理知识和提升学习效率。
26 10
|
3月前
|
Python
记两次简单的edusrc挖掘
记两次简单的edusrc挖掘
|
4月前
|
存储 数据采集 机器学习/深度学习
大数据分析:挖掘数据价值的技术和方法
在数字化时代,大数据已经成为企业和科研机构的重要资源之一。然而,对于海量的数据如何进行分析和挖掘却是一个巨大的挑战。本文将介绍大数据分析的基本概念、技术和方法,帮助读者了解如何利用现代技术和工具,挖掘数据中蕴藏的价值。
603 0
|
11月前
|
SQL 存储 算法
数据分类分级-隐私管理与保护
仅仅进行数据分类分级以满足监管相对应的要求是远远不够的,数据分类分级工作是合规的起点而不是终点,今天我们就继续探讨数据分类分级如何在隐私管理与保护中发挥作用,以实现数据合规建设工作中更多的应用与价值。
131 0
|
SQL 分布式计算 运维
开源大数据分析实验(2)——简单用户画像分析之加工数据
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
|
数据可视化 数据挖掘
数据信息汇总的7种基本技术总结
数据汇总是一个将原始数据简化为其主要成分或特征的过程,使其更容易理解、可视化和分析。本文介绍总结数据的七种重要方法,有助于理解数据实质的内容。
204 0
|
自然语言处理 达摩院 数据格式
带你读《达摩院智能客服知识运营白皮书》——3.2 如何进行知识收集?--基于知识来源收集候选知识
带你读《达摩院智能客服知识运营白皮书》——3.2 如何进行知识收集?--基于知识来源收集候选知识
136 0
|
机器学习/深度学习 分布式计算 算法
大数据建模、分析、挖掘技术应用
掌握基于Hadoop大数据平台的数据挖掘和数据仓库分布式系统平台应用,以及商业和开源的数据分析产品加上Hadoop平台形成大数据分析平台的应用剖析。
|
XML 数据库 数据格式
DrugBank:小分子数据信息挖掘
DrugBank:小分子数据信息挖掘
858 0
DrugBank:小分子数据信息挖掘