动物miRNA靶基因本地预测(三)—— 靶基因预测与结果分析
前两篇介绍了4种靶基因预测软件的下载与安装,以及数据的准备过程。本篇将正式开始进行靶基因的预测, 并对4种个软件的结果进行整理,最终得到4软件结果的交集。
靶基因预测
1、miRanda
miranda file1 file2 [options..]
miranda的使用需要准备两个文件,file1是miRNA序列的fasta文件,file2是mRNA序列的fasta文件。
此外,你还可以根据需求设置可选参数。
以下列举几个常用的参数选项:
-sc S 将得分阈值设置为S [默认:140.0]
-en -E 将能量阈值设置为-E kcal / mol [默认值:1.0]
-strict 严格要求5'种子区配对 [默认:关]
-out file 输出结果到文件 [默认:关]
miranda test.txt total_reverse_CDS201703.txt -out out.txt
grep '>>' out.txt > miranda_result.txt
第一条命令是进行靶基因预测,第二条命令则是从预测结果中提取关键信息(grep搜索含有’>>’的行并输出至指定文件夹)。
2、TargetScan
Targetscan的使用很简单: targetscan_50.pl miRNA.fa mRNA.fa outfile
perl targetscan_50.pl test_targetscan.txt total_reverse_CDS201703_targetscan.txt targetscan_results.txt
3、PITA
perl pita_prediction.pl -utr total_reverse_CDS201703.txt -mir test.txt -prefix test &
-prefix后面跟的是文件名(不含后缀), 命令后面加个&是为了把程序放在后台运行,因为这个软件运行真的太慢了!
在经过漫长的等待后,程序终于跑完了,结果文件有两个,test_pita_results_targets.tab,test_pita_results.tab,我们要的信息就在test_pita_results.tab文件中,但是这个文件并不是我们真正想要的,PITA这个软件真的太不友好了,还需要我们自己提取△△G小于或等于-10kcal/mol的行.
cat test_pita_results.tab | awk '$13 <= -10 {print $0} > pita_results.txt
但是,由于test_pita_results.tab这个文件太大了,我的有400多兆,这条命令执行起来也是超慢的,于是我用了一个很古老的方法,也就是复制粘贴,因为我观察过了,文件中每一条结果是按照△△G由小到大排序的,所以直以将前面小于等于-10的结果(事实上只有很少的一部分)复制粘贴到另一个文本中就好了.
在选择文本时,有一个小技巧.
这样就可以快速的选择目标区域了,然后ctrl C ,ctrl V ,搞定!
4、RNA22
将你的miRNA和mRNA文件放在Parameters.properties和RNA22v2.class所在文件夹中,然后打开Parameters.properties文件,根据注释信息修改即可.
需要java1.6及以上版本才可运行RNA22v2,在服务器输入java –version查看Java版本,若不符合则可下载最新版java.
java RNA22v2
因为RNA22的运行也是比较慢的,可以放在后台运行.
结果整理
以上是4种软件靶基因预测结果, miRNA和靶mRNA名称在前两列中, 并且以制表符tab分隔, 我希望从文件中提取前两列的信息,并将其合并为一列.
def TidyMirandaResult(path, inputfile, outfile):infpath = r'{}\{}'.format(path,inputfile)outfpath = r'{}\{}'.format(path, outfile)with open(infpath) as f:for row in f:row = row.split('\t')line = row[0][2:] + ':' + row[1] + '\n'with open(outfpath, 'a') as r:r.writelines(line)def TidyTargetscanResult(path, inputfile, outfile):infpath = r'{}\{}'.format(path, inputfile)outfpath = r'{}\{}'.format(path, outfile)i = 0with open(infpath) as f:for row in f:i += 1if i == 1:continuerow = row.split('\t')line = row[1] + ':' + row[0] + '\n'with open(outfpath, 'a') as r:r.writelines(line)def TidyRNA22Result(path, inputfile, outfile):infpath = r'{}\{}'.format(path, inputfile)outfpath = r'{}\{}'.format(path, outfile)with open(infpath) as f:for row in f:row = row.split('\t')line = row[0] + ':' + row[1] + '\n'with open(outfpath, 'a') as r:r.writelines(line)def main():path = r'D:\用户\桌面\练习\结果'TidyMirandaResult(path, 'miranda_result.txt', 'miranda_TidyResult.txt')TidyRNA22Result(path, 'RNA22_result.txt', 'RNA22_TidyResult.txt')TidyTargetscanResult(path, 'targetscan_result.txt', 'targetscan_TidyResult.txt')TidyTargetscanResult(path, 'pita_results.txt', 'pita_TidyResult.txt') # pita结果处理和targetscan是一样的main()
绘制韦恩图
在线网站:https://bioinfogp.cnb.csic.es/tools/venny/index.html
这个网站最多做4组数据的韦恩图,刚好适合我,还可以调颜色,调字体,点击图中的数字就会列出交集结果,个人觉得这个网站做韦恩图还是很方便很不错的.
从结果可以看到,4种软件的交集结果有8763条,意味着测试的miRNA在总转录本中有8763条潜在的靶位点,记住是靶位点,不是靶基因,因为一个基因可能在多个miRNA中有靶位点.
将4软件结果的交集数据保存为txt文本,从该文本中提取出mRNA和靶基因名称
i = 0
with open(r'D:\用户\桌面\练习\结果\4软件结果交集.txt') as f:for row in f:i += 1if i == 1:continuerow = row.split(':')line = row[1]with open(r'D:\用户\桌面\练习\结果\靶基因.txt', 'a') as r:r.writelines(line)
有了靶基因名称就可以做一些KEGG富集分析了.
动物miRNA靶基因本地预测(三)—— 靶基因预测与结果分析相关推荐
- 动物miRNA靶基因本地预测(一)—— 软件安装
前面几篇有讲到miRNA的差异表达分析,当我们拿到差异miRNA后,就需要对这些差异miRNA进行靶基因的预测,这能帮助我们快速的获得潜在的靶基因,缩小试验验证的基因范围.所以接下来几篇将介绍动物mi ...
- mdr1基因寡核苷酸/酸敏感靶多肽/聚乙二醇埃博霉素B偶联阿霉素的相关制备
小编这里整理了mdr1基因寡核苷酸/酸敏感靶多肽/聚乙二醇埃博霉素B偶联阿霉素的相关内容,一起来看! 聚乙二醇埃博霉素B偶联阿霉素相关研究: 阿霉素与酰肼聚乙二醇羧基在磷酸的作用下反应制得阿霉素聚乙二 ...
- 漫谈百度阿里腾讯三巨头基因,盈利移动未来
http://jianshu.io/p/enyPjW本文受<冬吴相对论>启发,试图以公司基因解码百度阿里腾讯,如何在移动互联网的未来继续盈利.视角从创始人自身角度以及,公司文化环境等过去诸 ...
- 分子生物学 第三章 基因、基因组及基因组学
文章目录 第三章 基因.基因组及基因组学 第一节 基因 1 基因认识的三个阶段 2 基因的特征 (1)跳跃基因 (2)断裂基因 3 基因的分类 4 基因的结构 5 基因的大小 6 基因的数目 第二节 ...
- 基于多模态成像遗传学数据来预测帕金森病相关基因和大脑区域的新型CERNNE方法
系列文章目录 基于聚类演化随机森林的阿尔兹海默症的多模态数据分析 基于多模态成像遗传学数据来预测帕金森病相关基因和大脑区域的新型CERNNE方法 系列文章目录 前言 阅览文章之前记得一键三联哦,做文章 ...
- 贺建奎给自己做了三次“基因编辑”:想当中国爱因斯坦,却变成生物狂人
晓查 乾明 发自 凹非寺 量子位 报道 | 公众号 QbitAI 全球首例基因编辑婴儿诞生的消息,让事件"主角"贺建奎成为国内外舆论中心. 同时,也带来了不少疑点: 贺建奎曾经表 ...
- 电力负荷预测三篇综述总结
三篇综述链接: 深度学习方法在负荷预测中的应用综述(论文阅读) 光伏发电量和用电量的概率预测研究综述(1) 光伏发电量和用电量的概率预测研究综述(2) 光伏发电量和用电量的概率预测研究综述(3) 能源 ...
- 基因数据分析主流软件与基因预测方法步骤-搬运工
源自:http://www.bbioo.com/lifesciences/40-114214-1.html 1. 基因数目预测的主流软件 GENSCAN就是一个经典的基因预测软件.1996年由MIT的 ...
- canvas保存到本地图片三种方法
canvas保存到本地图片三种方法 canvas保存本地图片 第一种方法(修改图片的媒体类型,window.open直接下载) 第二种方法(创建a标签,通过自己触发点击来下载) 第三种方法(将图片数据 ...
- 预测----三个原则
资料来源: [图文]科技统计预测 - 百度文库 https://wenku.baidu.com/view/1a82da55fbd6195f312b3169a45177232f60e4ef.html ...
最新文章
- ACM OnlineJudge网站汇总
- sizeof()使用注意
- 今天晴朗,但是由于晚上睡眠不是很好就头昏眼花
- 2018-2019 20165227《信息安全系统设计基础》第三周学习总结
- 聊城大学计算机应用基础函授,聊城大学试题计算机应用基础试题
- std::thread 不 join
- [Cogs14] [网络流24题#1] 飞行员分配方案 [网络流,最大流,二分图匹配]
- STM32 GPIO应用
- ❤️❤️固高运动控制卡的相关知识点
- RubyOnRails 文件下载
- SpringBoot的yml配置文件(三)
- 利用LM317的LED恒流源电路图
- html自定义的DIV垂直滚动条
- lua的演进 lua的历史
- TCPC 可用于笔记本,平板等HOST端的解决方案
- 2017年的错误和失误
- C/C++编程学习 - 第9周 ③ 整理药名
- python+selenium安装,自动化测试环境搭建
- 改善脑力的70条方法
- Revit二次开发---关于CAD翻模第一步
热门文章
- r与python的区别和联系-Python和R语言的区别?
- JAYのpython学习笔记——数据结构之列表
- 【Python之GUI开发案例】用Python的tkinter开发聚合翻译神器
- 微信开发之使用java获取签名signature
- videopose3d 用自己的视频跑结果
- 怎么查找iphone测试的软件,iphone怎么测试跑分 iphone跑分软件使用教程
- 中国人民银行清算总中心CDA业务数据分析师培训正式开课
- torch.nn.Conv2d() 用法讲解
- Linux CentOS(常用命令)
- 零基础也能看懂的五大网络安全技术,学网络真的可以很简单