A: как проверить, находится ли символ в строке
Вы можете использовать следующие методы, чтобы проверить, находится ли символ в строке в R:
Способ 1. Проверьте, находится ли символ в строке, используя базу R.
grepl(my_character, my_string, fixed= TRUE )
Способ 2. Проверьте, находится ли символ в строке, используя пакет stringr.
library (stringr)
str_detect(my_string, my_character)
Следующие примеры показывают, как использовать каждый метод на практике.
Пример 1. Проверьте, находится ли символ в строке, используя базу R.
Следующий код показывает, как проверить, существует ли «Дуг» в определенной строке в R:
#define character to look for
my_character <- "Doug"
#define string
my_string <- "Hey my name is Douglas"
#check if "Doug" is in string
grepl(my_character, my_string, fixed= TRUE )
[1] TRUE
Поскольку в строке существует «Doug», функция grepl() возвращает TRU E.
Предположим, мы вместо этого проверяем, существует ли в строке «Стив»:
#define character to look for
my_character <- "Steve"
#define string
my_string <- "Hey my name is Douglas"
#check if "Steve" is in string
grepl(my_character, my_string, fixed= TRUE )
[1] FALSE
Поскольку «Стив» не существует в строке, функция grepl() возвращает FALSE .
Пример 2. Проверьте, находится ли символ в строке, используя пакет stringr.
Следующий код показывает, как использовать функцию str_detect() пакета stringr , чтобы проверить, существует ли строка «Doug» в определенной строке:
library (stringr)
#define character to look for
my_character <- "Doug"
#define string
my_string <- "Hey my name is Douglas"
#check if "Doug" is in string
str_detect(my_string, my_character)
[1] TRUE
Функция str_detect() возвращает TRUE , поскольку в строке присутствует «Doug».
Обратите внимание, что мы также можем использовать следующий синтаксис, чтобы проверить, существует ли в строке несколько символов:
library (stringr)
#define vector of characters to look for
my_characters <- c("Doug", "Steve", "name", "He")
#define string
my_string <- "Hey my name is Douglas"
#check if each character is in string
str_detect(my_string, my_characters)
[1] TRUE FALSE TRUE TRUE
По результату мы видим:
- «Дуг» существует в сети.
- «Стива» на канале нет.
- «имя» существует в строке.
- «Оно» существует в строке.
Связано: Как использовать функцию str_detect() в R (3 примера)
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:
Как удалить последний символ из строки в R
Как найти местоположение символа в строке в R
Как выбрать столбцы, содержащие определенную строку в R