-
构建子集 subsetting 列表的子集 -[[]]/$/[[]][]/[[]][[]] -嵌套列表/不完全匹配(partial matching) x<-list(id=1:4,height=170,gender="male") > x<-list(id=1:4,height=170,gender="male") > x $id [1] 1 2 3 4 $height [1] 170 $gender [1] "male" > x[1] $id [1] 1 2 3 4 > x[[1]] or x[["id"]] or x$id[不能是变量] [1] 1 2 3 4 拿多个元素 x[c(1,3)] ======================================= x<-list(a=list(1,2,3,4),b=c("Monday","Tuesday")) x[[c(1,1]]拿到嵌套里面的数 l$列表的不完全匹配 l[["a",exact = FALSE]]关掉了精确匹配查看全部
-
对象的5种类型(classes of objects): 1、字符(character) 2、数值(numeric:real numbers) 3、整数(integer) 4、复数(complex) 5、逻辑(logical:T/F)查看全部
-
构建子集 subsetting 数据框的子集 x <- data.frame(v1=1:5,v2=6:10,v3=11:15) v1 v2 v3 1 1 6 11 2 3 4 5 x$v3[c(2,4)]<-NA 拿到第二列数据: x[,2] or x[,"v2"] subset(x,x$v1>2) x[which(x$v1>2),]查看全部
-
构建子集 subsetting 矩阵的子集 x<-matrix(1:6,nrow=2,ncol=3) x[1,2]//拿到第一行第二列的元素 x[1,]//拿到第一行的所有元素 x[2,c(1,3)]//拿到第二行 第一个和第三个元素 class(x[1,2])查看返回的类型 结果是integer 要想得到矩阵类型 :x[1,2,drop=FALSE]查看全部
-
构建子集 subsetting 原始数据 raw dataset ->预处理后的数据 clean dataset 基本方法 []提取一个或多个类型相同的元素 [[]]从列表或数据框中提取元素 $ 按名字从列表或数据框中提取元素 x<-1:10 x[1] x[1:5] x[x>5] x[x>5&x<7]查看全部
-
数据结构 日期与时间(date,time) -日期:Date 距离1970-01-01的天数/date()/Sys.Date() weekdays()/months()/quarters() x <- date() x3 <-as.Date("2016-9-24") ================================ 时间:POSIXct/POSIXlt 距离1920-01-01秒数/Sys.time() POSIXct:整数,常用于存入数据框 POSIXlt:列表,还包含星期,年,月,日等信息查看全部
-
数据结构 数据框(data frame) -存储表格数据(tabular data) -视为各元素长度相同的列表 -每个元素代表一列数据 -每个元素的长度代表行数 -元素类型可以不同 创建一个数据块 df <- data.frame(id=c(1,2,3,4),name=c("a","b","c","d"),gender=c(TRUE,TRUE,FALSE,FALSE))查看全部
-
数据结构 缺失值(missing value) -NA/NaN:NaN属于NA,NA不属于NaN(一般表示数字缺失值) -NA有类型属性:integer NA,character NA等 -is.na()/is.nan() x <-c(1,NA,2,NA) is.na(x) //在数据预处理中非常重要查看全部
-
数据结构 因子(factor) -分类数据/有序 vs.无序 -整数向量+标签(label)(优于整数向量)//线性模型经常用到 Male/Female vs .1/2 常用于lm(),glm() x<- factor(c("female","female","male","male")) y<- factor(c("female","female","male","male"),levels=c("male","female"))//设置基线水平,控制先后顺序 table()//因子 unclass()//去因子查看全部
-
列表 -可以包含不同类型的对象 -创建列表 list() eg: l <-list("a",2,10,3+4i,TRUE) l2 <-list(a=1,b=2,c=3) l3 <-list(c(1,2,3),c(4,5,6,7)) x <- matrix(1:6,nrow=2,ncol=3) dimnames(x) <- lisst(c("a","b"),c("c","d","e"))查看全部
-
矩阵(matrix) -向量+维度属性(整数向量:nrow,ncol) 创建空白矩阵 x<-matrix(nrow=行数,ncol=列数) 创建矩阵 x<-matrix(内容,nrow=行数,ncol=列数) 查看矩阵行列数 dim(x) 维度属性 dim()可以查看当前矩阵多少行多少列 attributes()查看当前矩阵属性 y<-1:6 dim(y) <-c(2,3) rbind(,)行拼接 cbind(,)列拼接 ============================================= 数组(array) -与矩阵类似,但是维度可以大于2 -创建数组 x<- array(1:24,dim=c(4,6)) x<- array(1:24,dim=c(2,3,4))查看全部
-
向量(vector) -只能包含同一类型的对象 x <- vector("character",length = 10) x1<-1:4 x2<- c(1,2,3,4) x3 <-c(TRUE,10,"a") x4 <-c("a","b","c") as.numeric(x4) class(x1)查看全部
-
数据结构: 对象的5种基本类型 : -字符 -数值 -整数 x <- 1 -复数 1+2i -逻辑 大写的TRUE FALSE 查看类型 class() 注意区分大小写 属性: -名称 -维度(matrix,array) -类型 -长度查看全部
-
数据结构 数据操作 -构建子集 -重要函数的使用查看全部
-
数据框的每列元素可以不同,而矩阵则要求一样。查看全部
举报
0/150
提交
取消