R的数据处理很常用的package“dplyr”里面select( )常被用来做数据的删减
1. select( ) 的用法
以mtcars数据集为例
head(mtcars,3)
# mpg cyl disp hp drat wt qsec vs am gear carb
# Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
# Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
# Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
删减不需要的数据字段
假设不需要用到mpy,hp这两个字段
mtcars1=select(mtcars,-c(“mpg”,“hp”))
head(mtcars1,3)
# cyl disp drat wt qsec vs am gear carb
# Mazda RX4 6 160 3.90 2.620 16.46 0 1 4 4
# Mazda RX4 Wag 6 160 3.90 2.875 17.02 0 1 4 4
# Datsun 710 4 108 3.85 2.320 18.61 1 1 4 1
假设需要mpg到wt的数据但是不需要cyl和hp这两个字段
mtcars2=select(mtcars,mpg:wt,-c(“cyl”,“hp”))
head(mtcars2,3)
# mpg disp drat wt
# Mazda RX4 21.0 160 3.90 2.620
# Mazda RX4 Wag 21.0 160 3.90 2.875
# Datsun 710 22.8 108 3.85 2.320
2. select( ) 的子函数
select还有很多非常好用的子函数
starts_with();
ends_with();
contains();
matches();
num_range();
one_of();
everything()
找出字段中所有以“c”开头的columns
mtcars3 = select(mtcars,starts_with(“c”))
head(mtcars3,3)
# cyl carb
# Mazda RX4 6 4
# Mazda RX4 Wag 6 4
# Datsun 710 4 1
删掉字段名称中有“ar”的columns
mtcars4 = select(mtcars,-contains(“ar”))
head(mtcars4,3)
#原始mpg cyl disp hp drat wt qsec vs am gear carb
# mpg cyl disp hp drat wt qsec vs am
# Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1
# Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1
# Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1
可以看出“ar”是一整个的字符串,所以字母顺序需要注意,有“ra”就被保留下来了
其他的几个子函数的用法也类似starts_with( )
一个无聊的数据分析公众号,时常有一些脑洞的实例分析。
让我们一起学习,打通各种技能!
本文由博客一文多发平台 OpenWrite 发布!