<div dir="ltr">A primeira modificação que faria no seu <i>script</i> seria mudar a chamada a <font face="monospace">grep</font> passando <font face="monospace">value </font>para <font face="monospace">TRUE.</font> <div><br></div><div>Depois  tratar os casos conforme sua nova especificação, que me parece muda a ordem da impressão do medicamento e coloca a substância à direita.</div><div><br></div><div><i>caveat lector</i> : conceito não testado‼</div><div><br></div><div>HTH</div><div>--</div><div>Cesar Rabak</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Mar 5, 2021 at 5:46 PM Felipe Barletta por (R-br) <<a href="mailto:r-br@listas.c3sl.ufpr.br">r-br@listas.c3sl.ufpr.br</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Prezados,<div><br></div><div>Preciso de uma ajuda para resolver a seguinte questão:</div><div><br></div><div>Possuo uma lista de nomes de medicamentos. Preciso identificar seus nomes em um vetor em que há informações de medicamentos preescritos.</div><div>Para isso estou usando a função grep().</div><div>Após identificar, quero incluir no data frame uma nova coluna contendo o nome do medicamento da primeira lista.</div><div>Segue um código reproduzível</div><div><br></div><div>##### Lista de medicamentos que guardei em um objeto chamado patterns</div><div>patterns <- <br></div>structure(c(1L, 2L, 3L, 4L, 6L, 7L, 5L, 8L, 9L, 10L, 11L), .Label = c("Oritavancina", <br>"Oxacilina", "Pefloxacino", "Penicilina", "Pexiganan", "Piperacilina", <br>"Piperacilina-tazobactam", "Pirazinamida", "Plazomicina", "Polimixina B", <br>"Posilozid"), class = "factor")<div><br></div><div>### Amostra do Data frame em que preciso encontrar os nomes da lista acima</div><div><br></div><div>df <-</div><div>structure(list(nome = structure(c(9L, 11L, 3L, 3L, 7L, 2L, 4L, <br>5L, 8L, 6L, 10L, 1L), .Label = c("CLORETO DE POTASSIO DRAGEA 600MG", <br>"CLORETO DE SODIO 0,9% SERINGA PREENCHIDA 5ML", "CLORETO DE SODIO SOLUCAO INJETAVEL 0,9% 10ML", <br>"CODEINA FOSFATO SOLUCAO ORAL 3MGML 10ML ISCMPA @", "CODEINA FOSFATO SOLUCAO ORAL 3MGML 5ML ISCMPA @", <br>"DipiRONA SOLUCAO INJETAVEL 500MGML 2ML", "FUROSEMIDA SOLUCAO INJETAVEL 10MGML 2ML", <br>"HIDROCORTISONA SUCCINATO SODICO PO LIOFILO INJETAVEL 100MG", <br>"ONDANSETRONA CLORIDRATO SOLUCAO INJETAVEL 2MGML 4ML", "Penicilina G BENZATINA PO LIOFILO INJETAVEL 1200000UI", <br>"PIPERACILINA SODICA 4G + TAZOBACTAM SODICA 0,5G PO LIOFILO INJETAVEL"<br>), class = "factor"), ID = c(13750598L, 13797248L, 13797248L, <br>13797248L, 13727853L, 13727853L, 13922033L, 13922033L, 13923030L, <br>13923030L, 13923030L, 13877978L), date = structure(c(1L, 2L, <br>2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L, 5L, 6L), .Label = c("2021-01-01 00:08:14", <br>"2021-01-01 00:20:39", "2021-01-01 00:22:18", "2021-01-31 23:53:48", <br>"2021-01-31 23:58:50", "2021-01-31 23:59:47"), class = "factor")), row.names = c(1L, <br>2L, 3L, 4L, 5L, 6L, 583867L, 583868L, 583869L, 583870L, 583871L, <br>583872L), class = "data.frame")<br></div><div><br></div><div>### Usei esse código para identificar os medicamentos</div><div>matches  <- unlist(sapply(patterns, function(p) grep(p, df$nome,<br>                                                     value = FALSE,<br>                                                     ignore.case = TRUE)<br>                          )<br>                   )<br></div><div>encontrados <- df[matches,]<br></div><div><br></div><div>Porém além de identificar, quero incluir no df uma nova variável identificando o nome do medicamento que consta na lista (patterns) -  como segue exemplo Abaixo:</div><div>dados<br>                                                                       nome<br>1                       ONDANSETRONA CLORIDRATO SOLUCAO INJETAVEL 2MGML 4ML<br>2      PIPERACILINA SODICA 4G + TAZOBACTAM SODICA 0,5G PO LIOFILO INJETAVEL<br>3                              CLORETO DE SODIO SOLUCAO INJETAVEL 0,9% 10ML<br>4                              CLORETO DE SODIO SOLUCAO INJETAVEL 0,9% 10ML<br>5                                   FUROSEMIDA SOLUCAO INJETAVEL 10MGML 2ML<br>6                              CLORETO DE SODIO 0,9% SERINGA PREENCHIDA 5ML<br>583867                     CODEINA FOSFATO SOLUCAO ORAL 3MGML 10ML ISCMPA @<br>583868                      CODEINA FOSFATO SOLUCAO ORAL 3MGML 5ML ISCMPA @<br>583869           HIDROCORTISONA SUCCINATO SODICO PO LIOFILO INJETAVEL 100MG<br>583870                               DipiRONA SOLUCAO INJETAVEL 500MGML 2ML<br>583871                Penicilina G BENZATINA PO LIOFILO INJETAVEL 1200000UI<br>583872                                     CLORETO DE POTASSIO DRAGEA 600MG<br>                          ID                date             Medicamento<br>1            13750598 2021-01-01 00:08:14 Não consta na lista<br>2            13797248 2021-01-01 00:20:39       <b>Piperacilina</b><br>3            13797248 2021-01-01 00:20:39 Não consta na lista<br>4            13797248 2021-01-01 00:20:39 Não consta na lista<br>5            13727853 2021-01-01 00:22:18 Não consta na lista<br>6            13727853 2021-01-01 00:22:18 Não consta na lista<br>583867       13922033 2021-01-31 23:53:48 Não consta na lista<br>583868       13922033 2021-01-31 23:53:48 Não consta na lista<br>583869       13923030 2021-01-31 23:58:50 Não consta na lista<br>583870       13923030 2021-01-31 23:58:50 Não consta na lista<br>583871       13923030 2021-01-31 23:58:50       <b>Penicilina</b><br>583872       13877978 2021-01-31 23:59:47 Outro medicamento<br></div><div><br></div><div><br></div><div><br></div><div><br></div></div>
_______________________________________________<br>
R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br" target="_blank">R-br@listas.c3sl.ufpr.br</a><br>
<a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" rel="noreferrer" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" rel="noreferrer" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br>
</blockquote></div>