R拥有许多用于存储数据的对象类型
这里对基本数据和操作做一下总结,也方便以后自己查阅
R中对象有5种基本类型:
字符(character)
数值(numeric: real numbers)
整数(interger)
复数(complex: 4+2i)
逻辑(logical:TRUE,FALSE)
R中对象有4种基本属性:
名称(name)
维度(dimensions:matrix,array)
类型(class)
长度(length)
R中的数据结构有6种
包括:标量、向量、矩阵、数组、数据框和列表
查看对象类型的命令:class(x)
标量是只含一个元素的向量
x1<- 5
x2 <- "hello"
x3 <- TRUE
它们用做保存一个常量
可以包含多个同一类型元素的对象
创建方法:
x <- vector("character",10)
x1 <- 1:5
x2 <- c(1,2,3)
访问方法:
#创建一个向量1:10填充
x <- 1:10
#读取第2个元素
x[2]
#第二个和第四个元素
x[c(2,4)]
矩阵可以看作向量+维度属性
创建方法:
x <- matrix(nrow=3 ,ncol=2) #建立3行2列空矩阵
x <- matrix(1:6, nrow=3, ncol=2) #先列后行的方式初始化并建立3行2列矩阵
dim(x) #查看矩阵行列数
attributes(x) #查看矩阵属性及行列数(例如:维度属性:3行2列)
$dim
[1] 3,2
y <- 1:6
dim(y) <- c(2,3) #先建立向量,然后附加维度属性,使之成为矩阵。
y2 <- matrix(1:6, nrow=2, ncol=3) #建立一个和y相同的矩阵
rbind(y,y2) #将矩阵按行合并(行数增加,列数不变)
cbind(y,y2) #将矩阵按列合并(列数增加,行数不变)
访问方法:
x[2, ] 表示选取矩阵第二行元素
x[, 2] 表示选取矩阵第二列元素
x[1, 4] 表示选取矩阵第一行第四列元素
x[1, c(4, 5)] 表示选取矩阵第一行的第四个第五个元素
创建方法:
x<-array(1:24,dim=c(3,8)) #array(内容,维度)
数据框在数据分析中经常被使用,用来存储表格数据(tabular data); 视为各元素长度相同的列表 *每个元素代表一列数据 *每个元素的长度代表行数 *元素类型可以不同 data frame数据框:同一列数据类型相同,且每一列长度相等
创建方式:
df <- data.frame(id=c(1,2,3),name=c("a","b","c"),gender=c("TRUE","TRUE","FALSE"))
nrow(df) #查看数据框行数
ncol(df) #查看数据框列数
data.matrix(df2) #数据转矩阵,元素是同种类型的
数据框的每列元素可以不同,而矩阵则要求一样。
访问方法:
df[1:2] #表示选取第一列第二列数据
df[c("id","name","gender")] #选取列名为id,name,gender的数据
列表可以包含不同类型的对象
创建方法:
l <- list("a", 2, 10L, 3+4i, TRUE) #建立列表
l2 <- list(a=1 ,b=2 ,c=3) #为列表元素命名
l3 <- list(c(1,2,3),c(4,5,6,7)) #列表元素可以是向量,创建元素个数大于1
x <- matrix(1:6, nrow=2, ncol=3)
dimnames(x) <- list(c("a","b"),c("c","d","e"))#为矩阵维度(行、列)命名
先就这样吧,以后补充
附上数据结构联系图(图出自慕课网)