Я понятия не имею, как выглядит фрейм данных, о котором вы говорите, но я сделал простой фрейм данных, содержащий здесь несколько фраз:
df <- data.frame(strings = c("problems not fixed.","Help how are you"),stringsAsFactors = FALSE)
Затем я сделал вектор слов, чтобы поставить запятую после:
words <- c("problems","no","whereas","however","but")
Затем я помещаю фрейм данных фраз в простой цикл for, используя gsub , чтобы заменить слово словом + запятая:
for (i in 1:length(df$strings)) {
string <- df$strings[i]
findWords <- intersect(unlist(strsplit(string," ")),words)
if (!is.null(findWords)) {
for (j in findWords) {
df$strings[i] <- gsub(j,paste0(j,","),string)
}
}
}
Выход:
df
strings
1 problems, not fixed.
2 Help how are you