如何从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