Замена строки, содержащей определенное слово, этим словом - PullRequest
1 голос
/ 05 мая 2020

У меня есть столбец в моем df с множеством разных строк, например, строка должна быть пересечена в точке a или вошла через точку a. Я хочу заменить всю эту строку только на, как я могу go сделать это?

1 Ответ

2 голосов
/ 05 мая 2020

После комментария к вопросу пользователя Allan Cameron , вот полное решение с предложением, которое я сделал.

df1 <- data.frame(col = c("crossed at point a", 
                          "doesn't match though it has as", 
                          "came in through point a", 
                          "no"))

df1$col[grepl("\\ba\\b", df1$col)] <- "a"
df1
#                              col
#1                               a
#2  doesn't match though it has as
#3                               a
#4                              no

Edit

Следуя другому комментарию Аллана Кэмерона, я решил написать небольшую функцию, чтобы упростить замену строки, содержащей слово, на это слово.

replaceWord <- function(x, word){
  pattern <- paste0("\\b", word, "\\b")
  i <- grep(pattern, x)
  x[i] <- word
  x
}

replaceWord(df1$col, "a")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...