文章目录
R作为一门统计语言,其灵活性不言而喻。由于课程要求,两个都进行使用,但是Matlab用的更加熟练一些。如果单纯把它当一门语言去学习,会发现它并没有什么优势。所以,学习R最好得有统计学的相关知识,否则不如学习其他语言。R最让人着迷的地方是,它有很多统计学牛人编写的R包,这极大丰富了R语言本身。
一、安装包和加载包
R和Python一样,功能强大是因为R具备丰富的功能包。在R中使用一下packages命令安装一个新的包,比如ggplot2包,注意:包的名字需要用引号括起来。
install.packages("ggplot2")
功能包安装完毕之后,可以加载并使用其提供的数据集、函数和功能,使用library命令加载一个功能包,包的名字不需要用引号括起来。
library(ggplot2)
二、数据结构
R中的数据结构主要有:
- 向量
- 矩阵
- 数组
- 数据框
- 因子
- 列表
1、向量是用于存储数据型、字符型或逻辑型数据的一维数组
单个向量的数据必须拥有相同的类型或模式,即要么都是数值型,要么都是字符型。R中的赋值使用箭头符号<-
# 数值型
a <- c(1, 2, 5, 3, 6, -2, 4)
# 字符型
b <- c("one", "two", "three")
# 逻辑型
c <- c(TRUE, TRUE, TRUE, FALSE, TRUE, FALSE)
2、矩阵是一个二维数组
每个元素都用相同的类型,必须都为数值型、字符型或逻辑型,可通过函数matrix()
创建矩阵
mymatrix <- matrix(vector, nrow=number_of_rows, ncol=number_of_columns, byrow=FALSE, dimnames=list(rownames,colnames))
3、数组的维度可以大于2
数组通过array()
函数创建
myarray <- array(vector, demensions, dimnames)
4、数据框可以理解成数据库中的表
数据框通过data.frame()
创建,是R中最为重要的一种数据结构
patientID <- c(1, 2, 3, 4)
age <- c(25, 34 ,28, 52)
diabetes <- c("Typel1", "Typel2", "Typel1", "Typel1")
status <- c("Poor", "Improved", "Excellent", "Poor")
patiendata <- data.frame(patientID, age, diabetes, status)
5、因子是无序类别型变量和有序类别类变量
diabetes对于不同的人只能取Typel1或者Type2,因此是一个因子
diabetes <- factor("Typel1", "Typel2", "Typel1", "Typel1")
6、列表是多个元素的排列
使用list()
定义一个列表,并可以为各个元素命名
g <- "My FIrst List"
h <- c(25 ,26, 18, 39)
j <- matrix(1:10, nrow=5)
k<- c("one", "two", "three")
mylist <- list(titile=g, age=h ,j ,k)
mylist
三、数据集
R中提供了很多数据集,安装包也会提供一些额外的数据集,这些数据集大多以数据框的形式给出。
例如系统自带的mtcars数据集
提供了32款车型的11项参数值,所有参数值都为数值型
head(mtcars)
nrow(mtcars)
names(mtcars)
summary(mtcars)
四、R语言脚本
除了在交互命令行中编写R代码,还可以保存成.R
的R语言脚本