温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在R语言中查找满足条件的数

发布时间:2021-04-02 14:31:09 来源:亿速云 阅读:1240 作者:Leah 栏目:开发技术

这篇文章将为大家详细讲解有关怎么在R语言中查找满足条件的数,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

1、在R语言中,如何找到满足条件的数呢?

例如给定一个向量c2,要求找到数值大于0的数:

> c2
 [1] 0.00 0.00 0.00 0.00 0.00 0.00 0.06 0.09 0.20 0.09 0.08 0.14 0.14 0.23
[15] 0.08 0.06 0.12 0.20 0.14 0.11 0.20 0.14 0.17 0.15 0.18 0.15 0.20 0.12
[29] 0.23 0.08 0.12 0.08 0.23 0.12 0.08 0.17 0.18 0.17 0.12 0.17 0.14 0.18
[43] 0.11 0.27 0.06
> c2[c2>0]
 [1] 0.06 0.09 0.20 0.09 0.08 0.14 0.14 0.23 0.08 0.06 0.12 0.20 0.14 0.11
[15] 0.20 0.14 0.17 0.15 0.18 0.15 0.20 0.12 0.23 0.08 0.12 0.08 0.23 0.12
[29] 0.08 0.17 0.18 0.17 0.12 0.17 0.14 0.18 0.11 0.27 0.06
>

2、找到了满足条件的数,但如何获取这些数在原向量中的位置(或索引呢)?

答案是使用which()函数。首先找到满足大于0的数列:

> c2>0
 [1] FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE TRUE
[13] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
[25] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
[37] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE

其次,根据该数列标识,就能找到对应的索引了。

> which(c2>0)
 [1] 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
[25] 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45

3、查找判断

(1)判断至少一个数满足条件

例如判断向量中至少有一个小于或等于零的数

> any(c2<=0)
[1] TRUE

(2)判断所有的数都满足条件

例如判断所有的数都大于0,判断所有的数都大于等于0:

> all(c2>0)
[1] FALSE
> all(c2>=0)
[1] TRUE
>

补充:R语言-查询向量中指定条件的数据-which

如下所示:

 > c(1,2,5,2,1,6,19,77,68,21,2,2,1,1)->x
 > which(x>20)->y
 > y
 [1] 8 9 10
 > x[y]
 [1] 77 68 21

关于怎么在R语言中查找满足条件的数就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI