R之筛选变量

it2022-05-08  13

> names(hr)

[1] "satisfaction" "evaluation" "project" "monthlyhour" "serviceyear" "accident" "left" "promotion" "dept" "salary" "SG"

 

变量选取的三种方法如下:

1.subset( )

eg:

> hr01<-subset(hr, select=c(left,salary) )

> names(hr01)

left  salary

 

> hr02<-subset(hr, select=left:salary)

> names(hr02)

left  promotion dept salary

 

> hr03<-subset(hr, select = - salary)

> names(hr03)

satisfaction  evaluation  project  monthlyhour  serviceyear   accident  left  promotion  dept  SG

 

2.dplyr包——filter()

filter()函数并不能选取我们感兴趣的变量,只能按照条件筛选出符合要求的cases,

> hr04<-filter(hr, hr$evaluation>0.72 & hr$project>4 | hr$serviceyear>=4)

 

3.dplyr包——select()

 > hr05<-select(hr,start_with(""))     筛选出名称中以xx开头的变量

 > hr06<-select(hr,end_with(""))      筛选出名称中以xx结尾的变量

  > hr07<-select(hr,contains(""))      筛选出名称中包含xx的变量

  > hr08<-select(hr,-start_with(""))   剔除掉名称中以xx开头的变量

 

> hr_top1<-hr_top %>%select(satisfaction:promotion,SG)

顺带提一下dplyr包的这个管道函数“%>%”,管道函数可以将左边的对象传递给右边的函数。

 

转载于:https://www.cnblogs.com/yilingjian/p/7281169.html


最新回复(0)