跳到正文

R 学习路径:从安装到统计建模的阅读顺序

R 语言共 24 篇文章,分五个阶段。阶段之间有依赖:tidyverse 的数据操作建立在对向量和数据框的理解之上,统计建模又建立在数据整理之上。按顺序读完一遍约需 6 到 8 周,每周投入 5 小时左右。

如果只想解决问题,不必按顺序读。每篇文章都自成一体,代码复制到 RStudio 即可运行。

阶段 内容 篇数 读完能做什么
R 基础 5 装好环境,理解向量与数据框,会写函数和控制流
tidyverse 数据操作 6 把原始数据整理成可以直接建模或画图的样子
ggplot2 可视化 5 画出能放进论文的图
统计建模 5 跑回归、方差分析与混合模型,读懂输出
报告与可重复研究 4 把分析和图表组织成可重复生成的报告

先装环境,再理解 R 的数据结构。R 里没有标量,1 是长度为 1 的向量,这一条想通了后面会顺很多。

顺序 文章 前置
1 数据类型:向量、因子、矩阵与列表 安装
2 数据框操作入门 数据类型
3 条件判断与循环 数据类型
4 函数定义与作用域 条件判断与循环

第 1 篇和第 2 篇是重点。索引从 1 开始、[[[ 的区别、因子的 levels 陷阱,这三个点会在后面每一篇文章里反复出现。

从这一阶段开始,日常数据操作的主力从 base R 转向 tidyverse。阶段一的数据框操作仍然有效,但 dplyr 的写法更易读,也更容易组合。

顺序 文章 前置
5 dplyr 核心动词 数据框操作入门
6 分组聚合 group_by 与 summarise dplyr 核心动词
7 tidyr 数据重塑 分组聚合
8 数据框连接 dplyr 核心动词
9 stringr 字符串处理 dplyr 核心动词
10 purrr 函数式编程 分组聚合、函数定义与作用域

第 5、6 篇是使用频率最高的两篇,值得读到能默写。第 7、8 篇解决「一张表不够用」的问题:要么形状不对(重塑),要么信息分散在多张表里(连接)。第 10 篇难度明显高于前五篇,可以先跳过,等遇到「对每个分组分别建模」的需求再回来。

顺序 文章 前置
11 ggplot2 图形语法入门 tidyr 数据重塑
12 常用几何对象 图形语法入门
13 分面与多图布局 常用几何对象
14 主题定制与出版级图表 常用几何对象
15 交互式图表入门 主题定制

第 11 篇讲的是映射(mapping)与标度(scale)的分工,这是 ggplot2 与其它绘图系统最大的区别,值得多花时间。第 12 到 14 篇可以按需读:先会画,再会调。第 15 篇面向网页展示,写论文用不到。

绘图前通常需要先把数据整理成长表,这就是阶段二第 7 篇的用途。

这一阶段回到 base R。lmglmaov 都不属于 tidyverse,语法风格与前三阶段不同。

顺序 文章 前置
16 描述性统计与假设检验 数据框操作入门
17 线性回归 描述性统计
18 逻辑回归 线性回归
19 方差分析 线性回归
20 混合效应模型入门 线性回归、方差分析

第 17 篇的核心是读懂 summary() 的输出,而不是记住函数名。第 18、19 篇都建立在第 17 篇之上,可以按研究方向二选一。第 20 篇处理重复测量和嵌套数据,心理学、教育学、生态学的研究生用到的概率较高。

顺序 文章 前置
21 R Markdown 入门 常用几何对象
22 Quarto 报告生成 R Markdown 入门
23 表格生成 R Markdown 入门
24 可重复研究与项目组织 全部

第 21 篇让分析结果和文字写在同一个文件里,改数据不用手动更新图。第 24 篇的内容在写毕业论文时会用到:目录结构、相对路径、包版本锁定。

  • 用过 SPSS,没写过代码:从阶段一第 1 篇开始,阶段四可以直接跳到第 17 篇。
  • 用过 Python 的 pandas:阶段一第 2 篇和第 8 篇快速过一遍,重点看两边的索引规则差异,然后进阶段三。
  • 只想画图:阶段二的第 5、7 篇加阶段三。
  • 只想跑统计:阶段一第 2 篇加阶段四。

本站的 Python 语言与 R 语言内容对等,同样五个阶段。两种语言没有主次优劣之分,选哪个语言取决于导师要求、课题组惯例和合作者的工具链。

需要同时使用时,两边的章节结构一一对应,可以对照阅读:数据操作见 Pandas 数据操作,可视化见 Matplotlib 基础,统计建模见 statsmodels 线性回归。Python 语言的完整顺序见 Python 学习路径