如果找到提供的分组值之一并且数值列值大于某个值,如何对 R 数据框进行子集化?

子集是一种常用的技术,根据分析的目的,它可以用于许多不同的目的。如果找到提供的分组值之一,则对数据框进行子集化意味着我们想要在分类列中存在任何分类变量值时进行子集化,并且如果我们想要包含大于值的数字列,那么我们需要遵循以下步骤 -

  • 创建数据框。

  • 如果存在任何提供的分类变量值并且数值列值大于某个值,则对数据框进行子集化。

创建数据框

让我们创建一个数据框,如下所示 -

例子

x<-rnorm(20)

Factor<-sample(c("Male","Female","Unknown"),20,replace=TRUE)

df<-data.frame(x,Factor)

df

执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-

输出

        x     Factor

1 -0.83268524 Female

2 1.66904204  Male

3 0.26228885  Unknown

4 0.42511920  Male

5 0.67910328  Female

6 -0.82505888 Female

7 -0.06084790 Male

8 0.56949099  Unknown

9 0.79874121  Female

10 -0.09112936 Unknown

11 -1.04839717 Male

12 -1.24128634 Unknown

13 1.51186118  Unknown

14 -0.79498005 Unknown

15 0.18607842  Male

16 -0.60505867 Female

17 1.24925658  Male

18 1.14835757  Male

19 -0.24867122 Female

20 0.59079712 Unknown

对数据框进行子集化

如果因子列中存在男性或女性并且 x 大于 0.5,则加载 dplyr 包并子集 df -

例子

library(dplyr)

x<-rnorm(20)

Factor<-sample(c("Male","Female","Unknown"),20,replace=TRUE)

df<-data.frame(x,Factor)

df %>% filter(x>0.5,Factor=="Male"|Factor=="Female")

输出

      x    Factor

1 1.6690420 Male

2 0.6791033 Female

3 0.7987412 Female

4 1.2492566 Male

5 1.1483576 Male

以上是 如果找到提供的分组值之一并且数值列值大于某个值,如何对 R 数据框进行子集化? 的全部内容, 来源链接: utcz.com/z/352703.html

回到顶部