1、R语言入门:R语言简介、安装与配置、RStudio IDE介绍
其实当初选择R语言,我并不是因为情怀。纯粹是被逼的。记得十年前我第一次处理药物靶点数据,几千个化合物的结构描述符,用Excel直接卡成PPT。后来转投R,半小时跑完分析,我就知道这条路走对了。
R语言本质上是统计学家写给自己的工具。语法灵活,包生态丰富,尤其在生物信息学和药物数据分析领域,几乎是标配。我说白了,做药物知识图谱,如果你不会R,就像外科医生不会用手术刀——能干,但效率差一大截。
1.1 为什么是R语言?
你可能会问:Python也挺好啊,为什么非要用R?我个人的理解是这样:R的强项在于数据框操作和统计建模。tidyverse这套东西,处理表格数据简直是降维打击。再加上Bioconductor里大量药物相关的包,比如用于药物-靶点网络分析的、用于化学结构相似性计算的,R的生态非常成熟。
另一个我觉得很重要的点:R的社区文档质量很高。CRAN上的每个包都有PDF手册,案例详实。早年我踩过的坑,大部分在vignettes里都能找到答案。
下面是R语言在我眼中的核心能力概览:
| 能力维度 | 具体表现 | 药物知识图谱场景 |
|---|---|---|
| 数据处理 | dplyr、data.table | 清洗药物-靶点关联表 |
| 统计建模 | lm、glm、survival | 药物疗效与靶点表达相关性 |
| 网络分析 | igraph、visNetwork | 药物-基因-疾病网络构建 |
| 可视化 | ggplot2、plotly | 知识图谱节点度分布 |
我的建议:如果你之前用过SAS或SPSS,R的上手曲线其实很平缓。别被命令行的样子吓到,RStudio会解决你的体验问题。
1.2 环境搭建:安装与配置
安装R本身并不复杂,但有几个细节我建议你留意。先讲系统层面的安装。
Windows用户:
- 去CRAN官网下载Windows版本,选base那一项
- 安装路径最好别有中文,不然后面读数据会出幺蛾子
- 安装完记得把R的bin目录加到环境变量里,方便命令行调用
macOS / Linux用户:
- macOS推荐通过Homebrew安装:
brew install r - Linux下根据发行版选择,Ubuntu可以用:
sudo apt install r-base - 我一般会顺手装r-base-dev,很多包编译需要这个
安装完成后,你可以在终端输入R启动交互环境。但我个人几乎从来不用原生的R GUI。等会儿我们聊RStudio。
包管理器CRAN是R的灵魂。安装包的命令很简单:
install.packages("tidyverse")
install.packages("igraph")
install.packages("BiocManager")
BiocManager::install("Rgraphviz")
我曾经踩过的坑:新手容易在包安装时遇到编译问题。尤其是Windows上,有些包需要Rtools。如果你看到类似“ERROR: compilation failed for package”的提示,多半是缺了Rtools。去CRAN下载安装Rtools,然后在R里运行:
writeLines('PATH="${RTOOLS40_HOME}\\usr\\bin;${PATH}"', con = "~/.Renviron")
重启R就行了。
配置方面,我还建议创建一个专门的工作目录,用来放所有的药物知识图谱项目代码。比如:
# 在R里运行
setwd("D:/R_projects/drug_kg_project")
getwd()
小技巧:用RStudio打开项目时,它会自动切换工作目录到项目根目录。养成用Project的习惯,比手动setwd靠谱得多。
1.3 RStudio IDE:我的日常战场
我记得第一次打开RStudio时,被四个面板搞晕了。但实际上,每个面板都有明确的用途。我简单给你拆解一下:
| 面板 | 位置 | 主要功能 |
|---|---|---|
| Source Editor | 左上 | 写脚本、保存为.R文件 |
| Console | 左下 | 交互式执行代码、看报错 |
| Environment / History | 右上 | 查看变量、数据框、函数列表 |
| Files / Plots / Packages / Help | 右下 | 文件管理、图表预览、包管理、文档查询 |
我一直觉得,RStudio最大的优势是它让数据探索变得很流畅。比如你在Source里写脚本,选中某段代码按Ctrl+Enter,结果直接出现在Console里。这种即时反馈是药物分析工作流里特别重要的——你想想看,当你拿到一个药物-靶点数据表,需要快速查看它的结构、缺失值、分布情况,RStudio的交互特性可以让你在几秒内完成。
常用的快捷键我列几个:
- Ctrl+Enter:运行当前行或选中代码
- Ctrl+Shift+N:新建R脚本
- Ctrl+1:光标跳回Source Editor
- Ctrl+2:光标跳回Console
- Ctrl+L:清空Console
另外,RStudio支持通过.Rprofile文件自定义启动设置。我习惯在项目根目录放一个.Rprofile,里面写好两个东西:
# .Rprofile 示例
options(stringsAsFactors = FALSE)
options(digits = 3)
cat("项目环境已加载。当前工作目录:", getwd(), "\n")
这样做的好处是,每次打开这个Project,R会自动执行这个文件,全局设置就到位了。不会出现stringsAsFactors这种历史遗留问题搞乱你的数据框。
1.4 本章核心知识框架
下图展示了我个人理解中,R语言基础知识体系在药物知识图谱全流程中的位置。你可以把它当成一张路线图,后续章节里我们逐步展开每一个模块。
你看,从安装R、配置RStudio、掌握包管理,到后面逐步深入数据处理、网络分析和可视化,最终落地到药物知识图谱的具体构建。这个路线图就是我为你规划的30章课程骨架。底气来自哪里?来自我这几年实际做过的几个药物重定位项目——不是纸上谈兵,是真真切切从数据到结论跑通过的全流程。
1.5 本章小结
学完本章,你应该能:
- 理解R语言在药物数据分析中的定位
- 独立完成R语言的安装和环境配置,包括Rtools
- 熟悉RStudio IDE的四个核心面板,能用快捷键提升操作效率
- 掌握通过CRAN和BiocManager安装包的方法,并配置
.Rprofile
课后可以玩一下:打开RStudio,新建一个R脚本,敲两行代码试试:
library(tidyverse)
ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point()
如果你能看到一张散点图出来了,恭喜——你的R环境已经跑通了。