R医学科研:R语言简介

2022-04-12 14:41:33 浏览数 (1)

R 语言在统计作图方面有独特优势,目前已成为许多数据科学团队最常用的语言之一。本章简要介绍 R 语言的基础知识,让读者能够开启 R 语言的学习,首先要做的是准备工作环境。

1.1 R 的安装

进入CRAN 官方网站,选择对应平台的版本。

  • Download R for Linux (Debian, Fedora/Redhat, Ubuntu)
  • Download R for macOS
  • Download R for Windows

一般来说,安装最新的 R 版本总是好的。

1.2 RStudio

RStudio 是目前最受欢迎的 R 语言集成开发环境之一。可从RStudio 主页免费下载其 Desktop 版本。

1.3 工作流程

1.3.1 基础

1.3.1.1 代码基础

R 可以当作计算器来使用:

代码语言:javascript复制
2   3
# [1] 5

2 * 3
# [1] 6

R 的赋值语句:

代码语言:javascript复制
object_name <- value

如:

代码语言:javascript复制
x <- 3 * 4      # 变量x等于3乘以4

y <- 5 * x      # 变量y等于5乘以x

R 语言使用独具特色的<-来赋值,实际上=也可以,具体如何选择依个人习惯而定。值得一提的是,如果进行大量赋值操作,输入<-实在太繁琐了,如果在 RStudio 中,可以使用快捷键:Alt -(Alt 加上减号)。

1.3.1.2 变量命名

变量名称必须以字母开头,并且只能包含字母、数字、下划线和点号。推荐使用 snake_case 命名法,即使用小写单词,并用下划线分隔:

代码语言:javascript复制
snake_case_variate

也有的用户习惯使用驼峰命名法,如:

代码语言:javascript复制
CamelCaseVariate
1.3.1.3 函数调用

R 函数的调用方法是:

代码语言:javascript复制
function_name(arg1 = val1, arg2 = val2, ...)

如:

代码语言:javascript复制
seq(1, 10)
# [1]  1  2  3  4  5  6  7  8  9 10

df <- read.table("/path/to/file")  # 读取某个表格文件的结果,并放入变量df中
1.3.1.4 简单练习

初学者可以通过练习《An Introduction to R》手册中附录 A 的例子感受 R 语言的工作方式,从而消除陌生感:

  • 启动 RStudio;
  • 在控制台输入help.start(),回车;
  • 找到《An Introduction to R》的附录 A:A sample session;
  • 开始练习。

1.3.2 脚本

一些简单的,非重复的任务,可以直接在控制台下执行,比如通过install.package()安装 R 包。但是如果任务比较复杂,代码量比较大,则应该将代码写在 R 脚本中,保存脚本时,通常以.R结尾。

运行脚本:

  • Ctrl Enter,没有选定行时,执行光标所在的一行;
  • Ctrl Enter,有选定的行时,执行选定的行;
  • Ctrl Shift S,运行整个脚本。

1.3.3 项目

1.3.3.1 工作空间

工作空间(workspace)是 R 的工作环境。不管是在控制台或者 R 脚本中创建的对象都被临时保存在工作空间(也可称为全局环境,.GlobalEnv)中。可以用函数ls()列出当前工作空间中的所有对象,或者使用rm()函数删除某个对象。rm(list = ls())命令会删除当前工作空间中的所有对象。

退出 R 时,如果选择保存工作空间,R 将会在工作空间所有文件夹中创建两个新文件。所有运行过的命令都被保存到一个名为“.Rhistory”的文件中,所有对象被保存到名为“.Rdata”的文件中。当 R 重新启动后,将自动恢复上一次保存的工作环境以及使用过的命令。建议不保存工作空间,因为代码才是最重要的,命令和对象都可以通过代码重新生成。取消保存工作空间的方法:

Tools -> Global Options… -> General -> Save worksapce to .RData on exit: Never

工作目录(working directory)是 R 用来读取文件和保存结果的一个文件夹。可以通过getwd()命令来得到当前的工作目录,也可以通过setwd()命令来设置工作目录,但通常不建议这么做,因为有更好的方法,即 RStudio 项目。

1.3.3.2 RStudio 项目

数据分析的最佳实践是为每一个任务都创建一个 RStudio 项目,这有明显的好处:

  • 将所有任务相关的文件放在一起,如输入数据、R 脚本、分析结果等;
  • 项目中可以使用相对路径;

1.4 R 包

R 包是一些实现特定功能的函数、数据集和文档的集合。R 包有 3 种类型:

  • 基础包,在 R 启动时就自动调入内存,可以直接使用;
  • 推荐包,这些包已经随 R 安装好,但需要使用 library()或 require()函数调入内存后才能使用;
  • 其他第三方包,这些包需要用户单独下载安装,然后通过 library()或 require()函数调入内存使用。

可以用search()命令查看当前哪些包加载到了内存中。

1.4.1 包的安装

安装和更新 CRAN 包:

代码语言:javascript复制
install.packages()  # 安装

update.packages()   # 更新

安装 Bioconductor 包:

代码语言:javascript复制
if (!require("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install()

1.4.2 包的加载

代码语言:javascript复制
library()

require()

1.5 获得帮助

R 提供了大量帮助文档,学会查看这些文档无疑会有助于问题的解决。可以通过下表列出的函数获得相应的帮助。

函数

功能

help.start()

打开帮助文档首页

help(foo)或?foo

查看函数foo的帮助

help.search(foo)或??foo

以foo为关键词搜索本地帮助文档

example(foo)

函数foo的使用示例

RSiteSearch(“foo”)

以foo为关键词搜索在线文档和邮件列表存档

apropos(“foo,” mode=“function”)

列出名称中含有foo的所有可用函数

data()

列出当前已加载包中所含的所有可用示例数据集

vignette()

列出当前已安装包中所有可用的vignette文档

vignette(“foo”)

为主题foo显示指定的vignette文档

0 人点赞