测试向量是否包含给定元素
如何检查向量是否包含给定值?
#1楼
match()
(返回第一个外观)和%in%
(返回布尔值)函数均为此目的而设计。
v <- c('a','b','c','e')'b' %in% v
## returns TRUEmatch('b',v)
## returns the first location of 'b', in this case: 2
#2楼
您可以使用%in%
运算符:
vec <- c(1, 2, 3, 4, 5)
1 %in% vec # true
10 %in% vec # false
#3楼
any()函数使代码可读
> w <- c(1,2,3)
> any(w==1)
[1] TRUE> v <- c('a','b','c')
> any(v=='b')
[1] TRUE> any(v=='f')
[1] FALSE
#4楼
还可以找到元素“哪个”的位置,该位置可以用作
pop <- c(3,4,5,7,13)which(pop==13)
并找到目标向量中不包含的元素,可以这样做:
pop <- c(1,2,4,6,10)Tset <- c(2,10,7) # Target setpop[which(!(pop%in%Tset))]
#5楼
is.element()
使代码更具可读性,并且与%in%
相同
v <- c('a','b','c','e')is.element('b', v)
'b' %in% v
## both return TRUEis.element('f', v)
'f' %in% v
## both return FALSEsubv <- c('a', 'f')
subv %in% v
## returns a vector TRUE FALSE
is.element(subv, v)
## returns a vector TRUE FALSE
#6楼
为此,我真的很喜欢grep()和grepl()。
grep()返回一个整数向量,该整数指示匹配的位置。
yo <- c("a", "a", "b", "b", "c", "c")grep("b", yo)
[1] 3 4
grepl()返回一个逻辑向量,匹配项的位置为“ TRUE”。
yo <- c("a", "a", "b", "b", "c", "c")grepl("b", yo)
[1] FALSE FALSE TRUE TRUE FALSE FALSE
这些功能区分大小写。
#7楼
我将根据输出对选项进行分组。 对于所有示例,假定以下向量。
v <- c('z', 'a','b','a','e')
检查状态:
%在%
> 'a' %in% v
[1] TRUE
任何()
> any('a'==v)
[1] TRUE
is.element()
> is.element('a', v)
[1] TRUE
为了找到第一次出现:
比赛()
> match('a', v)
[1] 2
为了找到所有出现作为索引向量:
哪一个()
> which('a' == v)
[1] 2 4
为了找到所有出现的逻辑向量 :
==
> 'a' == v
[1] FALSE TRUE FALSE TRUE FALSE
编辑:出于注释中提到的原因,从列表中删除grep()和grepl()
测试向量是否包含给定元素相关推荐
- C++中检查vector是否包含给定元素的几种方式
概述 在编码中经常会遇到一种场景,就是要在数组或列表中查找某个元素是否存在,其实对于这种线性操作,自己实现一个循环来检查是非常简单的事情,那既然这样,为啥还要专门写篇博客来分享呢? 一个最重要的原因就 ...
- 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
题目描述 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 ...
- Redis 笔记(06)— set 类型(向集合添加元素、获取集合元素个数、判断集合中是否包含某个元素、删除给定元素、返回集合中所有元素、计算集合的交集、并集、差集)
Redis 的 set 集合内部的键值对是无序的唯一的.它的内部实现相当于一个特殊的字典,字典中所有的 value 都是一个值 NULL .当集合中最后一个元素移除之后,数据结构自动删除,内存被回收. ...
- stl向量_如何检查C ++ STL中向量中是否存在元素?
stl向量 Given a vector and an element to be searched in the vector. 给定一个向量和要在向量中搜索的元素. To check whethe ...
- 算法题解:找出包含给定字符的最小窗口(枚举的一般方法)
题目分析 题目链接:https://leetcode.com/problems... 题目补充:t可以包含重复的字符,如果t包含了n个c,那么找出的window也要包含n个c. 窗口是由2个游标确定的 ...
- Redis 中的 集合(Set) SCARD:获取集合包含的元素数量
5.5 SCARD:获取集合包含的元素数量 通过使用SCARD命令,用户可以获取给定集合的大小,即集合包含的 元素数量: 以下代码展示了如何使用SCARD命令去获取databases集合.fruits ...
- 下面html标签元素中不属于块元素的是,HTML中为何P标签内不可包含块元素?
起因:在做项目时发现原本在DW中无误的代码到了MyEclipse6.0里面却提示N多错误,甚是诧异.于是究其原因,发现块级元素P内是不能嵌套DIV的. 深究:我们先来认识in-line内联元素和blo ...
- js 判断数组中是否包含某个元素
判断数组中是否包含某个元素的八种方法 方法一:array.indexOf (item,start):元素在数组中的位置,如果没与搜索到则返回 -1. 参数 描述 item 必须.查找的元素. star ...
- 【Shell】判断是否包含给定字符串
目录 Shell判断字符串包含关系的几种方法 shell中[ ]和[[]]的区别 格式匹配 作者:bandaoyu 链接:https://blog.csdn.net/bandaoyu/article ...
最新文章
- 2022.3.28紫薇
- java list取值_Java集合详解
- springmvc 前端传给后台中文数据时,会产生乱码
- 判断字典中指定key是否存在
- C2248编译错误的原因和解决--VC6向VC7.1迁移真是累死人,N多编译错误
- linux中的改变bin级别,Linux常用命令
- Flink keyby 数据倾斜问题处理
- hadoop伪分布式(单机版)安装,Linux
- 转正后的感悟(对正在实习的朋友的建议吧)
- 数据结构与算法:十大排序算法之归并排序
- js判断字符串是否在数组中
- ones eye rand randn diag randperm
- 10.性能之巅 洞悉系统、企业与云计算 --- 网络
- 适配器模式之迭代器模式
- 自定义小型ajax框架-ajax讲义二
- 3dmax材质丢失插件_3dmax找丢失贴图的材质插件怎么用
- 【北邮国院大三上】电子商务法(e-commerce law)知识点整理——Banking Lawe-Payment
- 本地时间和GMT(UTC)时间的转换
- Matlab信号添加噪声及信噪比SNR的计算
- 2021/11/16 定时器Timer和cron表达式
热门文章
- : Andorid的Linux基础教学之五 中断机制
- 关于BeginPaint和WM_ERASEBKGND
- VS 2008 中内存泄露检查
- DiskLruCache 源码解析
- android 怎么判断activity 从哪里启动的
- php 将内容中的图片的域名,php给编辑器中的图片地址添加域名
- 基于double-check模式尝试将消息放到batch中
- HashMap存自定义对象为什么要重写 hashcode 和 equals 方法?
- ocm名单 oracle_oracle_ocm
- excel合并多个工作表_如何快速的合并多个 Excel 工作簿至一个工作簿中的工作表?...