在 R 数据框列中查找小于等于阈值的连续出现频率?

要在 R 数据框列中找到小于阈值的连续出现频率,我们可以使用 rle 函数和 sum 函数。

查看下面给出的示例以了解如何完成。

示例 1

以下代码段创建了一个示例数据框 -

x<-round(rnorm(20,1,2.5),0)

df1<-data.frame(x)

df1

创建以下数据框 -

    x

1   1

2   4

3  -2

4  -3

5  -3

6  -4

7   3

8  -4

9   2

10  1

11  4

12  2

13  1

14 -1

15  4

16 -4

17  1

18 -1

19 -2

20 -1

要在 x 列中找到小于 1 的成功发生频率,请将以下代码添加到上述代码段中 -

x<-round(rnorm(20,1,2.5),0)

df1<-data.frame(x)

sum(rle(df1$x<=1)$values)

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

[1] 6

示例 2

以下代码段创建了一个示例数据框 -

y<-round(rnorm(20,5,10),0)

df2<-data.frame(y)

df2

创建以下数据框 -

     y

1   22

2    4

3    5

4   18

5   16

6   18

7    3

8   -4

9   22

10   8

11   5

12   6

13 -11

14  -7

15  -4

16   7

17  18

18  11

19  -6

20  -9

要在 y 列中找到小于 5 的成功发生频率,请将以下代码添加到上述代码段中 -

y<-round(rnorm(20,5,10),0)

df2<-data.frame(y)

sum(rle(df2$y<=5)$values)

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

[1] 5

示例 3

以下代码段创建了一个示例数据框 -

z<-sample(0:5,20,replace=TRUE)

df3<-data.frame(z)

df3

创建以下数据框 -

   z

1  2

2  4

3  3

4  5

5  4

6  2

7  3

8  2

9  0

10 3

11 4

12 0

13 4

14 3

15 3

16 0

17 3

18 3

19 3

20 3

要在 z 列中找到小于 4 的成功发生频率,请将以下代码添加到上述代码段中 -

z<-sample(0:5,20,replace=TRUE)

df3<-data.frame(z)

sum(rle(df3$z<=4)$values)

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

[1] 2

以上是 在 R 数据框列中查找小于等于阈值的连续出现频率? 的全部内容, 来源链接: utcz.com/z/317239.html

回到顶部