📊 R语言 学习路线
71 个互动教程
R 语言入门 — 统计计算
R:统计分析、数据可视化专用语言
R 向量操作
学习R语言中R 向量操作 — R语言教程的详细用法和最佳实践
R 数据导入
学习R语言中R 数据导入 — R语言教程的详细用法和最佳实践
R 字符串处理
学习R语言中R 字符串处理 — R语言教程的详细用法和最佳实践
R 循环与条件
学习R语言中R 循环与条件 — R语言教程的详细用法和最佳实践
R 因子 Factor
学习R语言中R 因子 Factor — R语言教程的详细用法和最佳实践
R 列表 List
R语言 列表类型详解
R ggplot2入门
R语言 ggplot2 数据可视化入门
R 线性回归
lm() 拟合模型,summary 分析结果
R 数据可视化
ggplot2 图层语法作图
R dplyr — 数据处理
filter/select/mutate/arrange/group_by 管道操作
R 数据整理
pivot_longer/wider 重塑数据
R ggplot2 数据可视化
ggplot2 图层语法:aes + geom + facet
R 统计分析入门
t.test/chisq.test/lm/summary/ANOVA
R 数据导入
read.csv/readxl/jsonlite/数据库连接
R 数据清洗
dplyr+ tidyr: filter/select/mutate/arrange/join
R tidyverse 数据科学生态
tidyverse套件:dplyr数据操作(filter/select/mutate/summarise/arrange/pipeline |> 管道符)、ggplot2绘图、tidyr数据整理(pivot_longer/pivot_wider)、readr读写数据、purrr函数式编程
R Markdown 与 Quarto
R Markdown/Quarto可重复研究报告:.Rmd/.qmd文件、YAML头部、knitr::kable表格、rmarkdown::render渲染(HTML/PDF/Word)、参数化报告、Quarto新一代(多语言/学术出版)
R数据清洗实战
学习使用dplyr和tidyr包进行缺失值处理、重复值删除、列类型转换与字符串清洗
R降维PCA主成分分析
掌握prcomp函数进行PCA降维,理解方差解释率与双标图可视化
R聚类分析
学习K-means和层次聚类,使用ggplot2进行聚类可视化
R决策树
使用rpart包构建分类与回归决策树,学习剪枝与可视化
R随机森林
使用randomForest包构建随机森林模型,进行特征重要性评估与调参
R交叉验证
系统学习k折交叉验证、留一法,使用caret包自动调参评估模型
R时间序列分析
掌握ts对象、分解、ACF/PACF图、ARIMA建模与forecast预测
R文本挖掘
使用tm和tidytext包进行词频统计、词云绘制、情感分析与主题建模
R网络分析
使用igraph包构建网络图,计算中心性指标,可视化社交网络与关系
R报告生成RMarkdown
学习RMarkdown语法,创建可重复报告,嵌入代码块、表格、图表与PDF/HTML输出
R降维分析:主成分分析(PCA)
掌握PCA原理及在R中的实现,使用prcomp进行降维与可视化。
R聚类分析:K均值与层次聚类
从数据标准化到聚类可视化,学习K-means和层次聚类的完整流程。
R数据清洗:使用tidyr整理数据
学习使用tidyr包对数据进行清洗与整理,处理缺失值、拆分合并列、转换长宽格式。
R降维PCA:主成分分析实战
理解PCA原理,使用R的prcomp函数进行数据降维与可视化。
R聚类分析:K-means聚类
掌握K-means聚类算法的原理与R实现,学习确定最佳聚类数。
R决策树:使用rpart构建分类树
学习使用rpart包构建决策树模型,进行数据分类与可视化。
R随机森林:集成学习实战
使用randomForest包构建随机森林模型,进行特征重要性评估与预测。
R交叉验证:使用caret评估模型性能
学习使用caret包进行K折交叉验证,避免过拟合,选择最优模型参数。
R时间序列:预测与分析
学习使用ts对象和forecast包进行时间序列分解、建模和预测。
R文本挖掘:使用tidytext进行词频分析
学习使用tidytext包对文本进行分词、词频统计和可视化。
R网络分析:使用igraph构建与可视化网络
学习使用igraph包创建图对象,进行网络分析与可视化。
R报告生成:RMarkdown入门
学习使用RMarkdown创建动态报告,集成代码、文本和图表。
R降维PCA主成分分析
学习主成分分析(PCA)原理,使用prcomp进行降维,并通过碎石图与双标图解释结果。
R语言非标准评价与tidyselect选择器
深入探讨R语言的非标准评价机制,结合tidyselect包实现动态列选择,掌握across()和pick()等高级操作。
现代Rcpp:使用xtensor实现多维数组操作
超越传统Rcpp,学习xtensor库在R中的集成应用,实现类似Python NumPy的高效多维数组运算。
R语言CUDA加速计算:从零开始GPU编程
突破CPU限制,教程将指导如何在R中直接调用CUDA内核,使用gpuR和cudaVector实现并行计算。
R实时WebSocket通信:基于Plumber的双向数据管道
告别单向API请求,学习在R中建立全双工WebSocket连接,实现服务器推送和实时数据流处理。
R语言量子计算入门:调用Qiskit执行量子算法
跨越经典计算边界,通过reticulate调用IBM Qiskit在R中创建和模拟量子电路。
R语言探索性图分析:社区检测与网络传播模拟
超越基础网络可视化,深入igraph的图论算法,实现动态社区发现和流行病传播模型。
R语言符号回归:基于语法进化的数学公式发现
利用进化算法自动发现数据背后的数学表达式,无需预设模型形式,比传统回归更灵活。
R语言高频金融:订单簿微观结构与最优执行策略
深入金融数据微观结构,使用tidyquant和highfrequency包分析Level 2订单簿数据并模拟最优交易。
R语言计算拓扑:持久同调与数据形状分析
运用拓扑数据分析工具挖掘高维数据的隐藏结构,识别循环、空洞等拓扑特征。
R语言贝叶斯优化:高斯过程实现超参数自动调优
使用高斯过程代理模型高效搜索超参数空间,比网格搜索和随机搜索更智能更高效。
R语言 quosure 元编程:在函数内安全捕获未求值表达式
深入讲解 rlang 包的 quosure 机制,对比 base R 的 substitute/substitute 局限,演示如何在自定义函数内捕获并操作表达式而不污染环境。
callr 包:在子 R 进程中运行任务而不阻塞主进程
区别于 parallel::clusterApply,callr 在每个独立 R 进程中执行任务,消除全局变量冲突和锁问题。本教程详解 callr::r()、r_bg() 和 r_session 的异步与并行用法。
recipes 包扩展:编写自定义 step_* 函数进行数据预处理
超越内置 step_center/step_pca,教你创建自己的预处理步骤。涉及 bake()、prep() 的 S3 方法,required_pkgs 声明和 tidy() 接口。以 '窗口化滚动平均' 为例。
R6 类与 Rcpp 模块桥接:在 R 中直接调用 C++ 方法
展示如何用 Rcpp 模块将 C++ 类暴露为 R6 引用类,实现方法级调用而无需重复 .Call。适合需要维护状态的图形、缓存或模拟引擎。
Shiny 模块内嵌轮询:用 reactivePoll 实现后台数据刷新
超越 session$reconnect,用 reactivePoll 配合模块控制独立数据源定时检查,仅在有变化时推送 UI 更新。适用于监控仪表盘、实时数据库查询。
tidyselect 扩展:编写自定义谓词选择器(如 where(is.numeric) 的进阶)
默认 where() 只能使用简单谓词,本教程展示如何用 tidyselect::eval_select() 和 tidyselect::scoped 创建接受额外参数的谓词,如 where(has_class('factor') & not_empty)。
vctrs 包实战:构建统一的概率分布向量类
学习 vctrs 的 S3 向量类创建方法。以 '分布' 类为例实现 vec_cast、vec_arith、vec_math 泛型,使不同分布(正态、均匀)可以混合在向量中,并支持 d/p/q/r 方法。
targets 动态分支:在管道中按组自动并行化
超越简单的 tar_target,使用 tar_map2 或 tar_group_by 为数据分组自动生成动态分支,每个分支独立计算。适合分组模型拟合、分页报告。本教程对比静态分支(tar_map)与动态分支(pattern = map)。
gtsummary 主题函数:为表格报告统一风格
gtsummary 默认输出适合快速查看,但正式报告需要品牌化。本教程演示如何用 set_gtsummary_theme() 和 theme_gtsummary_js() 创建自定义主题,修改字体、数字格式、p值标记和脚注。
Arrow 数据集与 Parquet:在 S3 上直接进行谓词下推查询
不将数据载入内存,使用 arrow::open_dataset 读取 S3 上的 Parquet 文件,利用列存特性只扫描需要的列和行。本教程处理 1GB+ 数据,演示 filter、select、group_by 如何下沉到文件元数据层。
R语言向量化内存映射数组实战
讲解如何使用bigmemory和ff包创建超出RAM容量的内存映射数组,并实现向量化运算,避免传统循环瓶颈。
构建你自己的R非标准求值引擎:quosures深度解剖
超越dplyr,从零实现基于rlang quosures的NSE函数,掌握捕获表达式与延迟求值的核心机制。
Rcpp属性加速:蒙特卡洛模拟的C++后端
使用Rcpp::attributes在R中直接嵌入C++代码,实现比纯R快50倍的蒙特卡洛期权定价模拟。
R语言GPU矩阵运算:使用gputools进行千倍加速
利用NVIDIA CUDA通过gputools包在R中执行矩阵乘法、SVD等运算,对比CPU与GPU性能差异。
future包高级并行:多会话负载均衡与进度条
利用future.batchtools在集群上智能分配任务,同时使用progressr显示实时进度,处理1000个独立模拟。
生产级R数据库连接池:DBI + pool包实战
使用pool包管理PostgreSQL连接池,避免反复创建连接的开销,支持并发查询与自动回收。
Shiny模块化事件总线:解耦复杂UI的通信
利用shiny模块与自定义事件总线,实现跨模块状态共享,避免父子模块直接调用带来的耦合。
purrr::accumulate实现递归状态机:模拟生态种群动态
使用purrr的accumulate函数创建状态机,模拟具有时间滞后的洛特卡-沃尔泰拉捕食者-猎物模型。
R6面向对象与元编程:构建可继承的API客户端
使用R6类设计一个可扩展的REST API客户端,利用元编程自动为每个API端点生成方法。
情感词典增强技术:从tidytext到自定义领域词典
超越内置词典,使用tidytext结合词向量(GloVe)和标注数据,为金融/医疗领域定制情感词典。