我有一个向量,该向量的字符与数据框中的某些姓氏匹配。我想提取/细分与向量v匹配的列。我可以这样做吗?想象一个大数据框架!
a <- sample(100,10)
b <- sample(100,10)
c <- sample(100,10)
d <- sample(100,10)
df <- data.frame(a,b,c,d)
df
a b c d
1 91 17 93 53
2 9 94 65 55
3 11 58 38 13
4 100 77 98 45
5 69 9 61 2
6 15 50 44 14
7 58 55 88 85
8 78 45 33 51
9 94 3 89 62
10 7 12 90 44
v <- c("a","c")
wanted output:
a c
1 91 93
2 9 65
3 11 38
4 100 98
5 69 61
6 15 44
7 58 88
8 78 33
9 94 89
10 7 90
>
答案 0 :(得分:1)
我们可以使用select
library(dplyr)
df %>%
select(all_of(v))
-输出
# a c
#1 26 92
#2 34 15
#3 15 80
#4 4 88
#5 55 69
#6 96 78
#7 63 2
#8 69 62
#9 12 100
#10 16 22
答案 1 :(得分:0)
> df
a b c d
1 38 28 68 88
2 18 21 99 40
3 30 33 20 91
4 85 64 88 33
5 9 46 82 51
6 59 86 40 80
7 80 81 46 49
8 57 61 83 37
9 64 6 15 27
10 72 13 37 68
> v <- c("a","c")
> df[v]
a c
1 38 68
2 18 99
3 30 20
4 85 88
5 9 82
6 59 40
7 80 46
8 57 83
9 64 15
10 72 37
>