R 语言入门与进阶¶
教程简介:系统学习 R 语言基础知识和生物信息学数据分析方法。
📚 课程目录¶
本系列教程由浅入深,从 R 语言基础到数据分析实战,适合生物信息学初学者。
基础篇¶
| 课程 | 内容 | 链接 |
|---|---|---|
| 第一课 | R 语言基础入门 | 📖 查看教程 | 💻 下载 |
| 第二课 | R 向量操作 | 📖 查看教程 | 💻 下载 |
| 第三课 | R 基础数据结构 | 📖 查看教程 | 💻 下载 |
| 第四课 | Tidyverse 数据处理 | 📖 查看教程 | 💻 下载 |
| 第五课 | R 流程控制 | 📖 查看教程 | 💻 下载 |
| 第六课 | R 函数与包开发 | 📖 在线阅读 | 💻 下载 |
| 第七课 | ggplot2 数据可视化 | 📖 在线阅读 | 💻 下载 |
📖 课程内容概览¶
第一课:R 语言基础入门¶
学习重点
- R Studio 编辑器的高效使用
- R 包的下载、读取和卸载(CRAN、Bioconductor、GitHub)
- 文件的读取与写入
- R 源文件的使用方法
公众号推文链接:https://mp.weixin.qq.com/s/ekygBz43ILxO4ne0mCjDxA
第二课:R 向量操作¶
学习重点
- 向量的创建与查看
- 向量的索引与子集提取
- 向量的运算与函数
- 缺失值的处理
- 常用向量相关函数
公众号推文链接:https://mp.weixin.qq.com/s/bB5lOeqRQVGA4n284Pzt0A
第三课:R 基础数据结构¶
学习重点
- 矩阵(Matrix)的创建与操作
- 列表(List)的使用与索引
- 数据框(Data Frame)的清洗与整理
- 三种结构的差异与应用场景
- Base R 数据清洗范式
公众号推文链接:https://mp.weixin.qq.com/s/QGyuHDArCZ7j4NeVdbDRpg
第四课:Tidyverse 数据处理¶
学习重点
- tidyverse 生态系统概述
- dplyr 数据操作(select, filter, mutate, summarise 等)
- tidyr 数据整理(pivot_longer, pivot_wider 等)
- 管道操作符
%>%的使用 - 数据处理实战案例
公众号推文链接:https://mp.weixin.qq.com/s/1Kj_bql-KEJBGdLt8_Quiw
第五课:R 流程控制¶
学习重点
- 条件判断(if/else、ifelse、switch)
- 循环结构(for、while、repeat)
- 循环控制(break、next)
- apply 函数族(apply、lapply、sapply 等)
- 函数式编程基础
公众号推文链接:https://mp.weixin.qq.com/s/thm_qtawHiSJJO_OP_xwCA
第六课:R 函数与包开发¶
学习重点
- R 函数的定义与参数设计
- 返回值与作用域(Scope)
- 闭包(Closure)与高阶函数
- roxygen2 注释规范与文档生成
- 使用 source() 和 debug() 调试函数
- R 包开发流程(devtools、testthat)
公众号推文链接:https://mp.weixin.qq.com/s/bDzhc05GRaGZ5ADIclrsjA
第七课:ggplot2 数据可视化¶
学习重点
- ggplot2 图形语法(Grammar of Graphics)
- 常用几何对象(散点图、箱线图、柱状图、密度图等)
- 美学映射(颜色、大小、透明度)
- 分面(facet_wrap / facet_grid)
- 标度与主题定制
- 生信实战:火山图、MA 图、PCA 图
💡 学习建议¶
学习路线
- 第一步:按顺序学习七节课程,理解基础概念
- 第二步:动手实践每个代码示例
- 第三步:尝试用真实的生信数据进行练习
- 第四步:尝试编写自己的函数和 R 包
- 第五步:用 ggplot2 绑定数据分析与可视化
学习资源
- R for Data Science - 经典 R 语言数据分析书籍
- Bioconductor - 生物信息学 R 包集合
- ggplot2 官方文档 - 数据可视化
🎯 课程特色¶
- ✅ 实用导向:面向生物信息学实际分析场景
- ✅ 代码示例:每个知识点配有完整代码
- ✅ 循序渐进:从零基础到数据分析实战
- ✅ 持续更新:后续会添加更多高级主题
📝 课程材料¶
所有课程的源代码(Rmd 文件)和 HTML 版本都存放在 Rbase/ 目录中。
你可以: - 直接在线查看 HTML 版本 - 下载 Rmd 文件在 RStudio 中运行 - Fork 仓库进行修改和练习
🤝 反馈与建议¶
如果你在学习过程中遇到问题,或者有任何建议,欢迎: