[R-br] Filtrar data frame

Henrique Dallazuanna wwwhsd em gmail.com
Segunda Maio 2 13:39:01 BRT 2011


Tente assim:

which(mapply(pmatch, x$Medic, x$MEDICAMENTO) > 0),]

2011/5/2 Marcos Silva <marcosfs2006 em gmail.com>
>
> Companheiros,
>
> Rolou uma dúvida que não consegui resolver.
>
> Eu tenho o seguinte data frame (ou um pedacinho dele):
>
> Paciente Medic MEDICAMENTO
> AMERICO CALCITRIOL SACARATO DE HIDROXIDO FERRICO 100 MG INJET - FRASC
> AMERICO CALCITRIOL CALCITRIOL 0,25 MCG - POR CAPSULA
> AMERICO CALCITRIOL CALCITRIOL 0,25 MCG (POR CAPSULA)
> AMERICO CALCITRIOL SACARATO DE HIDROXIDO FERRICO 100 MG INJETAVEL (POR FRASCO D
> AMERICO CALCITRIOL ALFAEPOETINA 4.000 UI INJETAVEL (POR FRASCO-AMPOLA)
> AMERICO CALCITRIOL ALFAEPOETINA  4000 UI  INJETAVEL - POR FRASCO - AM
> ANA LAMOTRIGINA INFLIXIMABE 10 MG/ML 10 ML INJETAVEL - TRATAMENTO
> ANA LAMOTRIGINA CICLOSPORINA 50 MG (POR CAPSULA)
> ANA LAMOTRIGINA INFLIXIMABE 10 MG/ML INJETAVEL (POR FRASCO-AMPOLA COM 10 ML
> ANA LAMOTRIGINA CICLOSPORINA 50 MG - POR CAPSULA
>
> Eu gostaria de aplicar um filtro de forma que me fosse retornado apenas os registros onde a string contida na coluna Medic estivesse contida na string contida em MEDICAMENTO (um match para falar em termos de expressões regulares).
>
> No data frame acima, o filtro me retornaria os registros 2 e 3 (se eu não me enganei).
>
> Acho que não é nada muito complicado, mas deu branco. Não consegui encontrar uma solução simples (nem complexa!).
>
> Espero que a questão esteja clara!
>
> Abs.
>
> --
> Marcos F. Silva
> http://sites.google.com/site/marcosfs2006
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>



--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O


Mais detalhes sobre a lista de discussão R-br