数组
数组(array)与矩阵类似,数组中的数据类型也只能有一种,但是维数可以大于2。
两种创建方式。
数组创建
# 方式一
ary1 <- array(data = 1:24)
dim(ary1) <- c(3,4,2)
ary1
# 方式二
dim1 <- c('A1','A2','A3')
dim2 <- c('B1','B2','B3','B4')
dim3 <- c('C1','C2')
ary2 <- array(data = 1:24,dim = c(3,4,2),dimnames = list(dim1,dim2,dim3))
ary2
数组索引
ary2[2,3,1]
列表
列表(list)是一种最复杂的数据结构,它可以由不同的对象混合构成。列表中的对象可以是向量、矩阵、数组、数据框以及列表本身。
列表创建
a <- 1:10
b <- c("one","two","three")
c <- matrix(1:8,nrow = 2)
d <- array(1:18,c(2,3,3))
list1 <- list(A=a,B=b,C=c,D=d)
list1
列表索引
list[2] #生成的是个列表
# 方法一
list1$B #生成的是输入的对象
# 方法二
list1[[2]] #生成的是输入的对象
拓展
- 数据框中要求每个列向量的长度相同,而列表没有要求,所以当多个向量的长度不等时通常用列表存储。
- R中函数的返回结果中通常包含了不同的对象,因而也常用列表存储。
- 注意list[2]与list[[2]]的区别
关注数据之帆,成为一帆的原始粉丝,和一帆一起进步吧!