-
Notifications
You must be signed in to change notification settings - Fork 6
/
index.Rmd
81 lines (59 loc) · 5.29 KB
/
index.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
---
title: "极客R:数据分析之道"
author: "王诗翔, 生信技能树"
date: "上次修改 `r Sys.Date()`"
documentclass: ctexbook
bibliography: [book.bib, packages.bib]
biblio-style: apalike
link-citations: yes
colorlinks: yes
lot: yes
lof: yes
geometry: [b5paper, tmargin=2.5cm, bmargin=2.5cm, lmargin=3.5cm, rmargin=2.5cm]
cover-image: cover.png
site: bookdown::bookdown_site
description: "一本极简 R 入门图书"
github-repo: ShixiangWang/geek-r-tutorial
---
```{r setup, include=FALSE}
options(
htmltools.dir.version = FALSE, formatR.indent = 2, width = 55, digits = 4
)
# 填上你需要用到的包,如 c('ggplot2', 'dplyr')
lapply(c("tidyverse"), function(pkg) {
if (system.file(package = pkg) == '') install.packages(pkg)
})
```
# 前言 {-}
<img src="cover.png" width="250" height="375" alt="Cover image" align="right" style="margin: 0 1em 0 1em" />
这是一本 R 语言入门的教程书。它旨在为生物信息学相关方向的研究人员(包括学生)以及相关从业者提供 R 语言基础知识的学习指导。当然,由于本书内容的普适性,我相信对数据科学感兴趣的读者都能够从阅读中受益。如果读者已经掌握了一些 R 的编程知识,可以翻看目录挑选感兴趣的内容阅读;如果读者已经掌握的 R 编程基础知识,我推荐翻看本书的附录部分查找感兴趣的内容进一步深入学习。
R 语言与知名的 C、Python 这类通用编程语言相比,它是一门领域特定语言(domain-specific language、DSL),专注于数据科学领域。由于 Python 的普及以及它在商业、科研分析中的流行,R 语言常常被用来与 Python 作比较。我在此无意做这样的比较,就我的个人使用经验来看,两者都有其独特和独到之处。作为一名数据科学家,我们常常需要掌握多门编程语言作为工具进行工作,其中主要包括 R、Python 和 Shell。R 和 Python 都是作为主要的数据探索、分析和可视化工具,读者任选其一熟练掌握即可。初学者同时学习 R 和 Python 是不可取,因为不同的编程语言都有相似的数据结构和运算控制逻辑,所以深度掌握一门语言能够更好地工作和更快地学习其他编程语言。另外,初学者往往困惑于 R 和 Python 两种语言中哪种更值得学习。就我的个人观点看,对于生物信息学方向的**大部分读者**,R 是更好的选择,有以下一些理由:
- R 语言对于没有编程经验的读者更加友好,内置向量化运算机制和默认统计分析包可以快速开始分析和获取结果。
- 由于 [Bioconductor](https://www.bioconductor.org/) 项目库和 [CRAN](https://cran.r-project.org/) 库中保存了上千个生物信息学软件包,涉及生物信息学领域的各个方面,读者在实际的研究工作中很难完全离开 R 语言环境。
- [tidyverse 系列工具包](https://github.com/tidyverse/)的强力驱动让 R 在数据分析各个方面工作都非常强力。
## 内容简介 {-}
当前已经有不少 R 语言和数据分析相关的教程和书籍,本书无力像它们一样详尽地介绍 R 众多方面的内容,而是聚焦于指导读者学习和理解数据分析的核心要点,并能快速应用到自己实际的工作中。本书的创作哲学是结合必备基础知识的简要介绍与实际问题的讨论与方案。本书的核心内容包括 R 的基础语法和一系列数据分析编程知识,后者将根据 Hadley 在《R for Data Science》提供的数据分析流程概览图 \@ref(fig:r4ds-overview) 中指出的核心要点分别按章节进行介绍。最后,我们将通过一些 R 包学习 R 在生物信息学方向的应用。
```{r r4ds-overview, fig.align="center", echo=FALSE, fig.cap="数据分析概览 (图源:R for Data Science 第 1 章)"}
knitr::include_graphics("fig/ch00-data-science.png")
```
本书的章节概要如下:
- 第 \@ref(prepare) 章介绍 R 与相应编程环境的安装和使用。
- 第 \@ref(base) 章介绍 R 基础编程语法,包括数据结构、控制流程等。
- 第 \@ref(import) 章介绍如何使用 R 导入常见的数据文件格式。
- 第 \@ref(clean) 章介绍数据清洗操作在 R 中的实现。
- 第 \@ref(visualization) 章介绍数据可视化。
- 第 \@ref(model) 章介绍 R 在统计建模方面的和实践。
- 第 \@ref(report) 章介绍 R 怎样导出结果和生成分析报告。
- 第 \@ref(bioapp) 章通过一些包的使用示例介绍 R 在生物信息学方向的应用。
## 许可 {-}
本网站(永久)免费阅读,以 [CC 署名-非商业性使用-禁止演绎 4.0 国际协议](https://creativecommons.org/licenses/by-nc-nd/4.0/deed.zh)发行。
Copyright © 2020 王诗翔
<img src="https://licensebuttons.net/l/by-nc-nd/3.0/88x31.png" alt="" width="88" height="31" />
## 建议与反馈 {-}
这是我第一次编写比较系统的 R 语言教程,由于个人能力有限,难免存在错误和不当,恳请读者批评指正。**目前我在业余时间对本书内容进行积极的开发,如果读者有任何建议,欢迎到 [GitHub 仓库 Issue](https://github.com/ShixiangWang/geek-r-tutorial/issues) 中进行讨论**。
## 致谢 {-}
非常感谢谁谁以及谁谁对我的帮助。
```{block2, type='flushright', html.tag='p'}
王诗翔
于 上海
```