如何根据提供的分组值子集R数据框?


子集是常用的技术之一,它根据分析目标具有多种不同的用途。如果找到提供的分组值之一,则子集数据框意味着如果分类变量值存在于分类列中,我们想要进行子集化,为此,我们可以按照以下步骤操作:

  • 创建数据框。
  • 如果存在分类变量的任何提供值,则对数据框进行子集化。

创建数据框

让我们创建一个如下所示的数据框:

 在线演示

x<-rnorm(20,2)
Grp<-sample(LETTERS[1:4],20,replace=TRUE)
df<-data.frame(x,Grp)
df

执行上述脚本后,将生成以下输出(由于随机化,此输出会在您的系统上有所不同):

      x    Grp
1 0.3359965 A
2 2.0416162 A
3 0.9818926 A
4 1.4677398 D
5 1.5241767 B
6 1.3522920 A
7 0.1696135 D
8 2.8538156 C
9 1.5310543 C
10 3.8808002 A
11 1.6601963 C
12 0.7691347 A
13 -0.3206033 B
14 3.0502846 A
15 2.7044244 C
16 0.4451980 A
17 0.8252894 C
18 0.8465413 A
19 2.0163445 C
20 1.5913034 C

数据框子集

加载dplyr包,如果Grp列中存在A或C,则对df进行子集化:

library(dplyr)
x<-rnorm(20,2)
Grp<-sample(LETTERS[1:4],20,replace=TRUE)
df<-data.frame(x,Grp)
df %>% filter(Grp=="A"|Grp=="C")

输出

      x    Grp
1 0.3359965 A
2 2.0416162 A
3 0.9818926 A
4 1.3522920 A
5 2.8538156 C
6 1.5310543 C
7 3.8808002 A
8 1.6601963 C
9 0.7691347 A
10 3.0502846 A
11 2.7044244 C
12 0.4451980 A
13 0.8252894 C
14 0.8465413 A
15 2.0163445 C
16 1.5913034 C

更新于:2021年8月13日

46 次查看

启动您的职业生涯

通过完成课程获得认证

开始
广告