R语言是一种数学编程语言,主要用于统计分析、绘图、数据挖掘。其在生物信息大数据分析处理过程中扮演着重要角色,笔者从今天开始分享R语言学习笔记。
环境安装
- Windows
官方地址:https://cloud.r-project.org/bin/windows/base/
- Linux
官方地址:https://cloud.r-project.org/bin/linux/
sudo apt update sudo apt -y upgrade sudo apt -y install r-base
- macOS
官方地址:https://cloud.r-project.org/bin/macosx/
R语言基础
R 语言赋值使用的是左箭头<-
符号,输出函数是print()
,可以用以下代码输出hello,world!,其中mystring是一个变量。
myString <- "Hello, World!" print ( myString )
变量
- 变量名称由字母,数字以及点号
.
或下划线_
组成。 - 赋值可以使用左箭头
<-
、等号=
、右箭头->
赋值。
# 使用左箭头 <-赋值 > var.2 <- c("learn","R") > print(var.2) [1] "learn" "R" # 使用右箭头 -> 赋值 > c(TRUE,1) -> var.3 > print(var.3) [1] 1 1
- 查看已定义的变量使用ls()函数
print(ls()) [1] "var.1" "var.2" "var.3"
- 删除变量用rm()函数
> rm(var.3) > print(ls()) [1] "var.1" "var.2"
- 交互式编程,比如在Linux系统下使用R,进入时输入
R
,退出时输入q()
- 文件脚本
后缀为.r
的文件时r脚本,执行时使用Rscript
命令后接脚本文件。
输入与输出
print()
是输出函数,支持数字、字符等输出。cat()
函数能够拼接输出结果,会自动在拼接元素间加一个空格。
> cat(ni,hao,ya!) ni hao ya!
- 输出内容到文件:使用
cat()
函数,不会在控制台产生结果,文件地址使用绝对路径,这个操作是覆盖写入,若需要保留文件原来内容,需要设置参数append=TRUE
cat("NI", file="D:\\r_test.txt") cat("HAO", file="/Users/r_test.txt", append=TRUE) 输出结果:NIHAO
sink()
函数可以把控制台内容写入文件中,同时控制台不再显示输出了。
该操作默认覆盖写入,若需追加写入使用参数append=TRUE
,若需控制台也同样输出则使用参数aplit=TRUE
,若需取消则使用sink()
- 文字输入:
readLines(xxx.txt)
命令可以读取文件内容为字符串
所读文件每一行末尾必须有换行符。
- 工作目录:使用
getwd()
获取当前工作目录,使用setwd()
设置当前工作目录。
# 当前工作目录 print(getwd()) # 设置当前工作目录 setwd("/Users/runoob/runoob-test2") # 查看当前工作目录 print(getwd())
- 注释功能:主要用于代码的解析,让读者更易理解,不会影响代码的执行。使用时在需要注释的一行前面加
#
即可。
R基础运算
赋值
R语言新版本同时支持=
和<-
两种赋值符号,下表是主要的数学运算法则:
关系运算符用于比较两个向量,结果返回TRUE
或FALSE
,下表是主要的关系运算法则:
逻辑运算符可用于数字、逻辑、复数向量。非零数字均为TRUE
,下表是主要的逻辑运算法则:
或|
与&
非!
,上述三个运算针对向量的每个元素,&&
和||
只针对第一个元素。
- 特殊运算符:
- 常见数学函数:
sqrt(n)
n的平方根
exp(n)
自然常数e的n次方
log(m,n)
对数函数,返回n的几次方为m
log10(m)
相当于log(m,10)
round (n, m)
对 n 保留 m 位小数四舍五入
ceiling (n)
对 n 向上取整
floor (n)
对 n 向下取整