生物信息学家为什么喜欢使用r语言?ggplot2软件包主要有什么用途

Python026

生物信息学家为什么喜欢使用r语言?ggplot2软件包主要有什么用途,第1张

语言,让无基础的人也能轻松编程。

价值和特点:

·从实际课题出发,提出解决问题的思路,结合原理或基础知识,但更偏重解决问题的框架和流程,选用简单易学但功能强大的R语言,把讲解延伸到具体程序代码,让读者100%经历整个课题研究过程。

·由多名R领域专家(均为一线科研工作者)通过互联网联手写作。通过前期网上调研,了解并在书中突出大多数人普遍关心而又难寻相关资料的问题。

·所见即所得,学到的知识可以通过简单编程(仅仅代码拷贝粘贴)加以实现,印象深刻,学了不易忘。提出三板斧学习法,让无基础的人也能编程。

·作者通过QQ群直接面向读者答

应该说Python/Perl是相互替代的脚本语言,但个人推荐用Python, 虽然很多老的生物信息软件是用Perl,Python学习曲线好,功能也更强大,是发展趋势。这两个语言主要是做数据预处理、文本处理和格式转换、对算法效率要求不高的分析软件开发,系统管理和pipeline搭建等工作。R语言主要的优势是大量的统计包的支持,数据统计分析中非常常用。Python和R有良好的接口。关于绘图很多人用R,其实Python的Matplotlib的绘图效果比它漂亮很多,也更强大。对pipeline的搭建shell编程更适合,是一个不可缺少的技能。与数据库相关的工作需要用到SQL, Linux : 操作系统,是基础。 生物信息对Linux的要求其实并不高,并不是要做系统开发者或管理员,只需要会用就行。复制粘贴、处理数据、安装软件等。生物信息软件:标准数据分析。 生物信息学的数据格式已经基本标准化,大部分工作可以直接用软件完成。Perl和Python:处理个性化问题、软件之间的对接。 这两门语言至少应该熟练掌握一门自己写程序用,另外一门要能看得懂。 写点小脚本感觉差别不大,但是perl写大程序不合适。 很多人认为python是趋势,但至少截止目前更多生信软件是用perl写的。 所以,如果刚开始学,建议主打python, 看懂perl。R :数据处理、统计、绘图、数据分析。 R语言的数据结构跟其他语言差异较大、而且总感觉语法比较散,不好记。但是R的软件包却异常强大。数据处理的reshape2, dplyr;绘图的ggplot2;还有Bioconductor里的几千个包。不得不会。

前面跟大家聊了一下 ☞R如何reverse一个字符串 ,其实这个只能实现反向,那怎么样才能实现互补呢?其实获取DNA的反向互补序列这个事情本身并不是很难。有很多网页工具都能够实现,我随便在网上搜了一下就找到3个。我这里只是想结合R语言来解决我们生物信息里面的一些小问题,帮助大家理解R。我们还是用上次的DNA序列来举例

如果大家只是想解决这个问题,可以使用下面提到的三个网页工具

1. https://www.bioinformatics.org/sms/rev_comp.html

将你的序列贴进对话框,点击SUBMIT就能得到方向互补序列

2. https://arep.med.harvard.edu/labgc/adnan/projects/Utilities/revcomp.html

你会发现这个工具不仅可以得到反向互补序列,还可以得到反向序列,互补序列,看你自己的需求是什么。将你的序列贴进对话框,点击reverse complement就能得到反向互补序列

3. http://www.cellbiol.com/cgi-bin/complement/rev_comp.cgi

将你的序列贴进对话框,点击Do the Job!就可以得到反向互补序列了

接下来我们用R语言来实现这个功能,我还是给大家介绍两种不同的方法。一种是比较原始一点的方法。第二种是站在前人的肩膀上,使用已有的R包来实现。

1.使用strsplit,rev,paste等R自带的函数来实现

2.使用mgsub包中的mgsub函数

参考资料: R如何reverse一个字符串