提取包含特定单词的句子

时间:2020-06-01 23:46:52

标签: r

我有一个get_sentences(sentimentr)列表,并且只需要提取那些包含特定单词的句子。 数据如下所示:

> class(frasi_negative)
[1] "get_sentences"           "get_sentences_character" "list"                   
> frasi_negative[2:3]
[[1]]
[1] "Al mio cellulare (Xiaomi Redmi Note 5) si mostrano singolarmente, separate, quando cerco di connetterle."                                                   
[2] "O si connette alla destra, o alla sinistra, e in ogni caso il suono poi esce dalle casse del cellulare (nonostante aver dato alle cuffie tutti i permessi)."
[3] "Non capisco perché, data che la prima connessione era andata come si deve; spente e riaccese, hanno iniziato a comportarsi così."                           
[4] "Ho provato a riavviare sia loro che cellulare, a rimetterle nella scatoletta e ritoglierle, ma il problema persiste."                                       
[5] "Non penso c'entri il mio cellulare (mai avuto problemi con prodotti simili), in ogni caso effettuo reso con rimborso."                                      

[[2]]
[1] "Comprate due mesi fa."                                                                                                                               
[2] "All'inizio funzionavano perfettamente, ma dopo qualche settimana hanno iniziato a disconnettersi tra loro di tanto in tanto."                        
[3] "qualche giorno fa estraendo la sinistra dall'astuccio magnetico è saltata la saldatura che la teneva chiusa e questo è il risultato."                
[4] "Usandole in chiamata rendono un suono non limpido."                                                                                                  
[5] "Il suono è accettabile ma nulla di speciale."                                                                                                        
[6] "Ormai sono inutilizzabili."                                                                                                                          
[7] "Per il prezzo mi aspettavo un prodotto migliore e più duraturo (avendo già provato auricolari wireless della stessa fascia di prezzo di altri brand)"

例如,如果我搜索“无线”,则仅应显示[[2]] [7]元素。

我该如何实现?

谢谢。

2 个答案:

答案 0 :(得分:0)

您可以尝试使用lapply遍历列表,并使用keyword返回与特定grep匹配的句子。

keyword <- 'wireless'
lapply(frasi_negative, function(x) grep(keyword, x, value = TRUE))

答案 1 :(得分:0)

我们可以使用str_detect

library(purrr)
library(stringr)
keyword <- 'wireless'
map(frasi_negative, ~  .x[str_detect(.x, keyword)])
相关问题