R соответствующие шаблоны: вектор и столбец - PullRequest
0 голосов
/ 26 июня 2018

У меня есть вектор:

vector_1 <- c('aa1/10', 'aa1/20', 'aa2/10') 

И у меня есть фрейм данных со столбцом: product (некоторые строки пусты)

product 
hello123

hello123;aa1/20
World

Я хочу получить еще один столбец с именем: check. Если одно из значений в моем vector_1 находится в столбце product, то я хочу иметь 1, иначе 0.

Я пробовал разные вещи, но они не сработали:

df$check <- ifelse(df$product %in% vector_1, 1,0)

К сожалению, нет результатов ... Итак, я попытался:

df$check <- grepl(vector_1, df$product)

Но там я получил предупреждение: В grep: аргумент шаблон имеет длину> 1, и будет использоваться только первый элемент.

Как я могу решить это?

Результат:

product            check
hello123             0 
                     0
hello123;aa1/20      1
World                0

1 Ответ

0 голосов
/ 26 июня 2018
df$check <- as.numeric(grepl(pattern = paste0(vector_1, collapse = "|"), x = df$product))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...