#r #sentence
Вопрос:
Я ищу в некоторых предложениях некоторые слова, используя этот код
sent <- c()
for (w in my_words){
my_selected_sentences <- grep(paste0('\b', w, '\b'), my_sentences, ignore.case = TRUE, value = TRUE, perl = TRUE)
sent <- c(sent, my_selected_sentences)
}
Теперь я хотел бы добавить в вектор «отправленное» слово или слова, которые были извлечены. Например
[1] here is the selected sentence.---"the", "sentence"
Как я могу это сделать? Спасибо!
Ответ №1:
Вы можете сделать что-то подобное (использовал искусственный пример):
my_sentences <- c('hi there','will you do it', 'i will go home', 'salt is good for health')
my_sentences_df <- data.frame(sentences = my_sentences, words_retrieved = "", stringsAsFactors = FALSE)
my_words <- c('will','salt','home')
sent <- c()
for (w in my_words){
my_selected_sentences <- grep(paste0('\b', w, '\b'), my_sentences, ignore.case = TRUE, value = TRUE, perl = TRUE)
my_sentences_df[grep(w, my_sentences_df$sentences),"words_retrieved"] <-
paste(my_sentences_df[grep(w, my_sentences_df$sentences),"words_retrieved"], w, sep = ", ")
sent <- c(sent, my_selected_sentences)
}
my_sentences_df$words_retrieved <- sub('.', '', my_sentences_df$words_retrieved)
writeLines(with(my_sentences_df, paste0(my_sentences, " ---", words_retrieved)))