如何从r中的向量中删除特定元素


您可以使用以下基本语法从 R 中的向量中删除特定元素:

 #remove 'a', 'b', 'c' from my_vector
my_vector[! my_vector %in% c('a', 'b, 'c')]

以下示例展示了如何在实践中使用此语法。

示例 1:从字符向量中删除元素

以下代码显示如何从 R 中的字符向量中删除元素:

 #definevector
x <- c('Mavs', 'Nets', 'Hawks', 'Bucks', 'Spurs', 'Suns')

#remove 'Mavs' and 'Spurs' from vector
x <- x[! x %in% c('Mavs', 'Spurs')]

#view updated vector
x

[1] "Nets" "Hawks" "Bucks" "Suns" 

请注意,“小牛”和“马刺”已从向量中删除。

示例 2:从数值向量中删除元素

以下代码显示了如何从 R 中的数值向量中删除元素:

 #define numeric vector
x <- c(1, 2, 2, 2, 3, 4, 5, 5, 7, 7, 8, 9, 12, 12, 13)

#remove 1, 4, and 5
x <- x[! x %in% c(1, 4, 5)]

#view updated vector
x

[1] 2 2 2 3 7 7 8 9 12 12 13

请注意,每次出现的值 1、4 和 5 都已从向量中删除。

我们还可以指定要从数值向量中删除的值的范围:

 #define numeric vector
x <- c(1, 2, 2, 2, 3, 4, 5, 5, 7, 7, 8, 9, 12, 12, 13)

#remove values between 2 and 10
x <- x[! x %in% 2:10]

#view updated vector
x

[1] 1 12 12 13

请注意,2 到 10 之间的每个值都已从向量中删除。

我们还可以删除大于或小于特定数字的值:

 #define numeric vector
x <- c(1, 2, 2, 2, 3, 4, 5, 5, 7, 7, 8, 9, 12, 12, 13)

#remove values less than 3 or greater than 10
x <- x[!(x < 3 | x > 10)]

#view updated vector
x

[1] 3 4 5 5 7 7 8 9

其他资源

如何在R中删除数据框
如何在R中删除多列
如何使用R中的循环向向量添加值

添加评论

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