如何检查向量是否包含r中的给定元素


您可以使用以下方法来检查向量是否包含 R 中的给定元素:

方法一:检查向量是否包含元素

 ' some_element ' %in% my_vector

方法二:查找元素第一次出现的位置

 match(' some_element ', my_vector)

方法三:查找该元素所有出现的位置

 which(' some_element ' == my_vector)

以下示例展示了如何在实践中使用每种方法。

示例 1:检查向量是否包含元素

以下代码显示如何检查给定向量中是否存在“Andy”:

 #createvector
my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank')

#check if vector contains 'Andy'
' Andy ' %in% my_vector

[1] TRUE

由于向量中存在元素“Andy”,因此输出显示TRUE

但是,假设我们检查向量中是否存在“Arnold”:

 #createvector
my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank')

#check if vector contains 'Arnold'
' Arnold ' %in% my_vector

[1] FALSE

由于向量中不存在元素“Arnold”,因此输出显示FALSE

示例2:查找元素第一次出现的位置

以下代码显示如何查找给定向量中第一次出现“Bert”的位置:

 #createvector
my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank')

#find first occurrence of 'Bert'
match(' Bert ', my_vector)

[1] 2

输出显示2 ,因为元素“Bert”首先出现在向量的位置 2 中。

下面的代码展示了如何找到向量中第一次出现“Carl”的位置:

 #createvector
my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank')

#find first occurrence of 'Carl'
match(' Carl ', my_vector)

[1] NA

输出显示NA ,因为元素“Carl”从未出现在向量中。

示例 3:查找该元素所有出现的位置

以下代码显示如何查找给定向量中所有出现的“Bert”:

 #createvector
my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank')

#find all occurrences of 'Bert'
which(' Bert ' == my_vector)

[1] 2 5

输出显示25 ,因为这些是向量中出现“Bert”的位置。

其他资源

以下教程解释了如何在 R 中执行其他常见任务:

如何在 R 中过滤向量
如何从R中的向量中删除NA值
如何从R中的向量中删除特定元素

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注