对象的基本类型
字符
1  | x <- "hello world"  | 
数值
1  | x <- 2  | 
整数
1  | x <- 2l  | 
复数
1  | x <- 1+2i  | 
逻辑
1  | x <- TRUE  | 
对象的属性
名称
维度
类型
长度
向量
只能包含同一类型的对象
创建向量
1  | x <- vector("character", length = 10)  | 
向量的强制转换
1  | x3 <- c(TRUE,10,"a") // 强制转换为 char  | 
为向量添加名称
1  | x1 <- c(1,2,3,4)  | 
矩阵
向量+维度
1  | // 默认是 NA,缺省值  | 
创建矩阵的另外一种方式
1  | y<- 1:6 // 创建向量  | 
矩阵的拼接
1  | // 按行  | 
数组
类似矩阵,只是维度可以大于2
创建数组
1  | x <- array(1:24, dim = c(4,6)) // 四行六列的矩阵  | 
列表
创建
1  | x <- list("a",2,10L,2+3i,TRUE)  | 
给列表元素命名
1  | x1 <- list(a=1,b=2,c=3)  | 
列表元素为向量
1  | x2 <- list(c(1,2,3), c(4,5,6))  | 
创建有名矩阵
1  | x <- matrix(1:6, nrow = 2, ncol = 3)  | 

因子
创建因子
1  | x <- factor(c("female", "female", "male", "male", "female"), levels = c("male", "female"))  | 
1  | table(x) -- 获取因子整体信息  | 
1  | unclass(x) -- level 为属性,去掉属性  | 
缺失值
NA/NAN:NAN属于NA,NA不属于NANNA有类型属性:integer NA、character NA…is.na()/is.nan():判断
1  | x <- c(1,NA,2,NA,3)  | 
数据框
1  | // 按列  | 
查询行和列
1  | nrow(df)  | 
转换矩阵
1  | df2 <- data.frame(id=c(1,2,3,4), score=c(80,82,90,100))  | 
日期和时间
日期
距离1970-01-01的天数
1  | x <- date()  | 
日期对象的函数
1  | weekdays(x3)  | 
日期之间的数学运算
1  | x4 <- as.Date("2016-01-01")  | 
时间
距离1970-01-01的秒数
POSIXct:整数,常用于存入数据框POSIXlt:列表,还包含星期、年、月、日等信息
1  | x <- Sys.time()  | 
1  | x1 <- "Jan 1, 2015 01:01"  |