在字符串列表中查找匹配项

问题描述 投票:0回答:1

我有一个数据框列,其中每行都有一个字符文本。我需要仅过滤与字符串列表匹配的行。

library(data.table)
library(plyr)
library(dplyr)

以下对象具有所有可用评论。

coment<-c("levou meses a incluir um plano de ensino e ainda assim modificou datas durante o semestre", 
"demora na correcao, sem parametro para criacao da proxima tarefa devido falta de retorno na tarefa anterior", 
"a professora dispersava demais durante as aulas.", "o estimulo a participacao nas aulas obviamente vai tambem do interesse do aluno, mas a professora tambem nao colaborava muito, nunca teve uma dinamica que fosse capaz de envolver os alunos e provoca-los a de fato participarem da aula, sempre houve mais do mesmo, \"\"quem leu o texto?\"\".\n", 
"criterios de avaliacao, datas , horarios, como seriam as avaliacoes... foram pontos que demoraram um longo periodo para serem definidos.", 
"uma cadeira que tem um volume de texto tao grande nao deveria possuir somente duas provas a meu ver, ainda somos alunos e muitas vezes estamos vendo o conteudo pela primeira vez acumular tanto conteudo para uma prova so prejudica o aluno.", 
"nao houve correcao nem discussao pos avaliacao.", "faltou melhor comunicacao no objetivo do trabalho final.", 
"nao foi explicado o que seria avaliado no trabalho final.", 
"o trabalho final foi bem desgastante em seu processo. a ideia em si se mostrou valida, porem, deveria ser revista o numero de empresas pesquisadas por cada grupo. nos alunos tivemos imensas dificuldades em ter acesso aos gestores das empresas estudadas, dificultando o nosso trabalho. e o tempo de apresentacao tambem nao era compativel com o tamanho da demanda que tivemos ao longo do semestre. apresentar duas empresas em 10 minutos prejudicou por demais as exposicoes de cada grupo."
)

我只想过滤至少部分匹配以下字符串的行>

bom <-c("incrivel", "otim", "muito bo", "bom", "bons", "boas", "boa didatica", 
"gentil", "melhor", "melhores", "excelencia", "excelente", "proveitosa", 
"atencios", "divertid", "boa didatica", "super", "gentil", "amei", 
"adorei", "dispersava")

使用

coment %like% bom
coment %in% bom
产生了零行数据帧或错误,尽管示例中存在匹配。

r regex stringr
1个回答
0
投票

你可以尝试

grep
如下

> grep(paste0(bom, collapse = "|"), coment, value = TRUE)
[1] "a professora dispersava demais durante as aulas."
[2] "faltou melhor comunicacao no objetivo do trabalho final."
© www.soinside.com 2019 - 2024. All rights reserved.