生物信息学专业看过来了,目前专注于 NGS 在肿瘤基因检测中的应用,就我的理解,讲一下 R 语言的学习顺序:
先学习基础 R;
-
然后学习 tidyverse;
最后学习业务知识。
那么我推荐书也按照这个学习顺序来。
1. 基础 R 语言
《An Introduction to R》(作者:Venables & Smith)
这本书是 R 语言官方文档的一部分,适合初学者入门,包括 R 语言的基本语法、数据类型、函数等内容。
《R 语言初学者指南》(作者:Phil Spector)
这本书从 R 语言的安装和基本操作开始讲起,逐步介绍了数据类型、控制结构和函数等内容,适合初学者入门。
《R 语言实战》(作者:Hadley Wickham)
这本书介绍了 R 语言的基本语法和数据结构,重点讲解了数据清洗、可视化和建模等方面的技巧。
《R 语言编程艺术》(作者:Norman Matloff)
这本书通过实例演示和代码分析,讲解了如何用 R 语言实现各种数据分析和统计算法,适合有一定编程经验的读者。
《R Graphics Cookbook》(作者:Winston Chang)
这本书介绍了 R 语言中各种图表的绘制方法,包括散点图、折线图、柱状图、箱线图等,适合需要进行数据可视化的读者。
2. tidyverse 系列
这里介绍两本有中文版的 tidyverse 系列书籍,当然中文版有些旧了,可以结合最新的在线版学习。需要说明的是,如果你认同 tidyverse 的理念,那么其官方网站的所有文档,都值得花时间认真学习。
《R 数据科学》(作者:Hadley Wickham)
这本书介绍了 tidyverse 系列包的基本使用方法,包括 ggplot2、dplyr、tidyr 等,适合进行数据分析和可视化的读者。
《ggplot2 数据分析与图形艺术》(作者:Hadley Wickham)
这本书介绍了 ggplot2 图形库的基本概念和使用方法,包括数据分组、坐标系、主题设置等。书中通过丰富的图例和实例,讲解了各种常见的图表类型,包括散点图、折线图、柱状图、箱线图、热力图等。同时,书中还介绍了如何进行图表的美化和定制,以及如何利用 ggplot2 进行交互式可视化。
3. 生物信息学领域
《Bioinformatics Data Skills》(作者:Vince Buffalo)
这本书介绍了生物信息学中的数据处理和分析技巧,包括 Linux 命令行、Python 和 R 语言等,适合进行生物信息学研究的读者。
生信方面为什么要推这本旧书呢?因为虽然年代久远,书中的一些通用的数据处理方法确没有过时。
《Bioconductor Case Studies》(作者:Hervé Pagès)
这本书介绍了生物信息学中的常见分析方法和工具,包括 RNA-seq 分析、ChIP-seq 分析等,通过实例演示和代码解析,适合进行生物信息学研究的读者。
R 语言数据分析,“包”治百病,而 bioconductor 收集了大量生物信息学领域的包,工作中很多问题都可以在上面找到相应的包来解决。
《Applied Bioinformatics》(作者:Paul M. Selzer)
这本书介绍了生物信息学中的基本概念和技术,包括序列比对、基因注释、蛋白质结构预测等,适合初学者入门。
《Bioinformatics and Functional Genomics》(作者:Jonathan Pevsner)
这本书介绍了生物信息学中的基本概念和技术,包括序列比对、基因表达分析、蛋白质结构预测等,适合进行生物信息学研究的读者。
《R 语言在生物信息学中的应用》(作者:许道溥)
这本书介绍了如何用 R 语言进行生物信息学分析和可视化,包括序列比对、基因表达分析等,适合进行生物信息学研究的读者。
4. 其他资源
此外,我还想推荐一些学习 R 语言的学习资源,以帮助大家更好地学习和掌握这门语言。
RStudio:R 语言学习标配,不多解释。
R 语言官方文档:R 语言官方文档提供了详细的 R 语言教程、函数说明和示例等内容,是学习 R 语言的重要参考资料。
DataCamp:DataCamp 是一家在线数据科学学习平台,提供了各种数据科学和 R 语言的课程和实践项目,并且有一部分内容是免费的。
Coursera:Coursera 是一家在线教育平台,提供了许多数据科学和 R 语言的课程,包括由 Johns Hopkins 大学开设的 Data Science Specialization 系列课程。
Stack Overflow:Stack Overflow 是一个面向程序员的问答社区,提供了大量关于 R 语言的问题和解答,是学习 R 语言过程中的重要参考资源。
最后,罗马不是一天建成的,实践才能出真知。学习 R 语言同样需要耐心和毅力,只有不断地实践和探索,才能真正掌握这门语言,并且在实际应用中发挥出更大的作用。