[R-br] Duplicated conjunto
Éder Comunello
comunello.eder em gmail.com
Quarta Maio 14 09:16:21 BRT 2014
Senhores, bom dia!
Apenas supondo...
### <code r>
t1[!duplicated(t1$tecnico),]
### deverá retornar só a primeira linha (nas demais tecnico="Cavalcante" é
duplicado!)
t1[!duplicated(t1),] ### utiliza todos os campos (colunas) e retorna só
linhas distintas!!!
t1[!duplicated(cbind(t1$data_de_realizacao,t1$tx_tipo_exame,t1$tecnico)),]
t1[!duplicated(t1[,3:5]),] ### mesmo que forma anterior
### as três formas deverão retornarão as linhas 1 e 10, mas a primeira
forma não é consistente.
### É comum a 'repetição' intencional do exame (por recomendação médica,
p.ex.), de modo que poderão haver registros do mesmo tipo de exame em datas
diferentes (e por vezes realizado pelo mesmo técnico). A segunda e terceira
forma são 'chaveadas' pelos campos de interesse.
</code>
Agora é necessário aplicar o código pra ver se procede. Espero que ajude,
Éder Comunello <c <comunello.eder em gmail.com>omunello.eder em gmail.com>
Dourados, MS - [22 16.5'S, 54 49'W]
Em 13 de maio de 2014 16:25, Edson Lira <edinhoestat em yahoo.com.br> escreveu:
> Caros amigos, tenho um banco de exames com a estrutura abaixo
>
> id data_de_coleta data_de_realizacao
> tx_tipo_exame tecnico
> 1 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 2 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 3 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 4 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 5 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 6 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 7 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 8 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 9 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 10 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 11 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 12 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 13 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 14 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 15 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 16 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 17 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 18 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 19 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 20 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 21 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 22 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 23 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 24 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 25 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 26 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 27 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 28 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 29 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 30 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 31 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 32 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
> 33 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
>
>
> t1<- ger[order(ger$tecnico,ger$data_de_realizacao, decreasing=TRUE) ,]
>
> gern<- t1[!duplicated(t1$tecnico),]
>
> Estou querendo, manter os exames (somente um de cada) eliminando os
> repetidos e os respectivos técnicos.
>
> Com a rotina acima não estou conseguindo.
>
> Gostaria de obeter o resultado abaixo:
> id data_de_coleta data_de_realizacao
> tx_tipo_exame tecnico
> 1 161538 2013-01-01 00:31:00 2013-01-01
> 08:20:01.406 Albumina Cavalcante
> 10 161538 2013-01-01 00:31:00 2013-01-01 08:20:01.859 Bilirrubina
> Total e Frações Cavalcante
>
> Exemplifiquei com dois tipos de exames, pode ser que tenha 3 ou 4
> exames.Só gostaria de eliminar os repetidos.
>
> [ ]'s.
> Edson Lira
> Estatístico
> Manaus-Amazonas
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20140514/e5a653f6/attachment.html>
Mais detalhes sobre a lista de discussão R-br