如何检查一个向量是否包含给定的值?
当前回答
还要找到元素“which”的位置,可以用作
pop <- c(3, 4, 5, 7, 13)
which(pop==13)
为了找到目标向量中不包含的元素,可以这样做:
pop <- c(1, 2, 4, 6, 10)
Tset <- c(2, 10, 7) # Target set
pop[which(!(pop%in%Tset))]
其他回答
match()(返回第一个外观)和%in%(返回一个布尔值)函数都是为此设计的。
v <- c('a','b','c','e')
'b' %in% v
## returns TRUE
match('b',v)
## returns the first location of 'b', in this case: 2
你可以使用%in%操作符:
vec <- c(1, 2, 3, 4, 5)
1 %in% vec # true
10 %in% vec # false
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
还要找到元素“which”的位置,可以用作
pop <- c(3, 4, 5, 7, 13)
which(pop==13)
为了找到目标向量中不包含的元素,可以这样做:
pop <- c(1, 2, 4, 6, 10)
Tset <- c(2, 10, 7) # Target set
pop[which(!(pop%in%Tset))]
is.element()使代码更具可读性,与%中的%相同
v <- c('a','b','c','e')
is.element('b', v)
'b' %in% v
## both return TRUE
is.element('f', v)
'f' %in% v
## both return FALSE
subv <- c('a', 'f')
subv %in% v
## returns a vector TRUE FALSE
is.element(subv, v)
## returns a vector TRUE FALSE
推荐文章
- 使用pandoc从Markdown转换为PDF时设置空白大小
- ggplot2折线图给出“geom_path:每组只包含一个观测值。你需要调整群体审美吗?”
- 在c++中使用数组或std::vector,性能差距是什么?
- 导入文本文件为单字符字符串
- 移除jupyter笔记本上的内核
- 提取一个dplyr tbl列作为向量
- 如何在R中绘制两个直方图?
- 显示/打印tibble的所有行(tbl_df)
- 我如何做一个数据帧的列表?
- 在常数平摊时间O(1)中将一个对象追加到R中的列表?
- 模拟ggplot2默认调色板
- R在哪里存储包?
- 标准化R中的数据列
- 在ggplot2中更改轴文本的字体大小和方向
- 增加轴刻度数