Как проверить, содержит ли вектор заданный элемент в r
Вы можете использовать следующие методы, чтобы проверить, содержит ли вектор заданный элемент в R:
Способ 1: проверьте, содержит ли вектор элемент
' some_element ' %in% my_vector
Способ 2. Найдите позицию первого вхождения элемента.
match(' some_element ', my_vector)
Способ 3. Найдите положение всех вхождений элемента.
which(' some_element ' == my_vector)
Следующие примеры показывают, как использовать каждый метод на практике.
Пример 1. Проверьте, содержит ли вектор элемент
Следующий код показывает, как проверить, существует ли «Энди» в данном векторе:
#createvector my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank') #check if vector contains 'Andy' ' Andy ' %in% my_vector [1] TRUE
На выходе отображается TRUE , поскольку элемент «Энди» существует в векторе.
Однако предположим, что мы проверяем, существует ли «Арнольд» в векторе:
#createvector my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank') #check if vector contains 'Arnold' ' Arnold ' %in% my_vector [1] FALSE
В выходных данных отображается ЛОЖЬ , поскольку элемент «Арнольд» не существует в векторе.
Пример 2. Найдите позицию первого вхождения элемента.
Следующий код показывает, как найти позицию первого вхождения слова «Берт» в заданном векторе:
#createvector my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank') #find first occurrence of 'Bert' match(' Bert ', my_vector) [1] 2
В выходных данных отображается 2 , поскольку элемент «Берт» появляется первым в позиции 2 вектора.
А следующий код показывает, как найти позицию первого вхождения слова «Карл» в вектор:
#createvector my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank') #find first occurrence of 'Carl' match(' Carl ', my_vector) [1] NA
В выводе отображается NA , поскольку элемент «Карл» никогда не появляется в векторе.
Пример 3. Найдите положение всех вхождений элемента.
Следующий код показывает, как найти все вхождения слова «Берт» в заданном векторе:
#createvector my_vector <- c('Andy', 'Bert', 'Chad', 'Doug', 'Bert', 'Frank') #find all occurrences of 'Bert' which(' Bert ' == my_vector) [1] 2 5
В выходных данных отображаются значения 2 и 5 , поскольку это позиции в векторе, где появляется «Берт».
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:
Как фильтровать вектор в R
Как удалить значения NA из вектора в R
Как удалить определенные элементы из вектора в R