构建子集subsetting
raw dataset and clean dateset
【】
【【】】
$
拿到数据顺序:子集
#日期
第3章 操纵数据:构建子集(subsetting)
3-1基本方法
原始数据(raw dataset)——预处理后的数据(clean dataset)
基本方法:
[]:提取一个或多个类型相同的元素
[[]]:从列表或数据框中提取元素
$:按名字从列表或数据框中提取元素
补充:R语言的数组下表是从1开始而不是0开始
例:x<-1:10 x[1] (拿到x的第1个元素) x[1:5] (拿到x的前5个元素) x[x>5] (拿大于5的元素)
x[x>5&x<7] x[x<3|x>7]
y<-1:4
names(y)<-c("a","b","c","d") y[2] y["b"](都是拿到y的第2个元素)
构件子集基本方法:
[]:提取一个或多个类型相同的元素
[[]]:从列表或数据框中提取元素
$:按名字从列表或数据框中提取元素
#与C和python不同的是,R的下标从‘1’开始
#可以通过向量名称来索引与之对应的向量
构建子集(subsetting)
R语言区分与c语言,下标是从1开始的
&是并且的意思,|是或者的意思
构建子集对原始数据进行数据预处理
R中的数组下标从1开始,在[ ]中输入想要获取元素的下标即可得到意向元素。在[ ]中输入逻辑条件即可对元素进行筛选,“并且”符号是&,“或者”符号是|,给元素命名用names()
构建子集的基本方法
[]:提取一个或多个类型相同的元素;
[[]]:从列表或数据框中提取元素;
$:按名字从列表或数据框中提取元素;
注意是下标从1开始;
可以在[]内添加判定条件,用&表示并且,用|表示或者;
构建子集的基本方法
提取元素基本方法:
[]:提取一个或多个类型相同的元素(向量元素下标从1开始,不是0)
[[]]:从列表或数据框中提取元素
$:按名字从列表或数据框中提取元素
> x <- 1:10 > x[1] [1] 1 > x[5] [1] 5 > x[1:5] #类似Python切片 [1] 1 2 3 4 5 > x[6:10] [1] 6 7 8 9 10 > x[x>5] [1] 6 7 8 9 10 > x>5 [1] FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE > x[x>5 & x<7] #按条件提取元素 [1] 6 > x[x<3 | x>7] [1] 1 2 8 9 10 > y <- 1:4 > y [1] 1 2 3 4 > names(y) <- c("a", "b", "c", "d") #给每个元素命名 > y a b c d 1 2 3 4 > y[2] b 2 > y["b"] #用名字提取元素 b 2
原始数据(raw dataset)->预处理后的数据(clean dataset)
[]:提取一个或多个类型相同的元素
[[]]:从列表或数据框中提取元素
$:按名字从列表或数据框中提取元素
| 有或者的意思
提取数据的基本方法
x<-1:10 x[x>2|x<1]#“或者” x[x>5&x<9]#“且” #给函数命名 x<-2:4 names(x)<-c("a","b","c")#一维时不需要使用dimnames()函数,而只需要names()函数;多为矩阵的dimnames必须为list x[2]
提取符合多个条件的元素:& 并且;| 或者
x[x>5] #提取符合条件的元素
raw dataset ——clean dataset
构建子集的方法1:[] 方括号,提取一个或多个same type elements
方法2:[[]] 两个方括号嵌套,从list or data frame中提取elements
方法3:$符号,按名字从list or df中提取elements
例如:创建向量x
x<-1:10
x[1] #想拿到第一个元素 请注意:R语言和C的区别是,R数组下标从1开始,C从0开始
x[5] #拿到第五个元素
x[1:5] #拿到前五个元素
有时候需要逻辑判断的条件,拿到子集
x[x>5]
直接输入x>5, 会对每个元素进行判断,结果用F or T的方式输出
x[x>5 & x<7]
x[x<3 | x>7]
给元素命名:
y<-1:4
names(y)<-c("a","b","c","d")
y[2] or y["b"]
使用名字来找到数据是一种常用的手段,因为有时候我们不知道想要的收据的下标是什么,但是知道元素的名字
构建子集subsetting:
原始数据(raw dataset) ->预处理后的数据(clean dataset) 。
原始数据通过预处理得到想要操作的数据,过程中需要构建子集。
向量的子集
基本方法:
[]:提取一个或多个类型相同的元素。类似于索引操作,但下标从1开始。[1:5]提取第1个到第5个元素。可在[]加上判定条件,如x[x>5],通过x>5返回每个元素与5比较大小后的真值,然后提取出x中为TRUE的元素。&并且,|或者。也可在[]输入元素对应的名字,名字要加""。
[[]]:从列表或数据框中提取元素
$:按名字从列表或数据框中提取元素 对于向量,直接用向量名加上判定条件,是对向量中的每个元素都进行判断,并返回每个元素对应的真值。
构建子集:
原始数据->预处理后的数据。原始数据通过预处理得到想要操作的数据。
向量的子集
基本方法:
[]:提取一个或多个类型相同的元素。类似于索引操作,但下标从1开始。[1:5]提取第1个到第5个元素。可在[]加上判定条件,如x[x>5],通过x>5返回每个元素与5比较大小后的真值,然后提取出x中为TRUE的元素。&并且,|或者。也可在[]输入元素对应的名字,名字要加""。
[[]]:从列表或数据框中提取元素
$:按名字从列表或数据框中提取元素 对于向量,直接用向量名加上判定条件,是对向量中的每个元素都进行判断,并返回每个元素对应的真值。
构建子集subsetting
构建子集
如何提取元素