[R-br] Forma "correta" e/ou mais "elegante"...
Mauricio Morgado Oliveira
oliveira.mauricio.morgado em gmail.com
Quarta Dezembro 12 11:05:56 BRST 2012
Gostaria de alguma dica (sugestão) para escrever de forma "correta" e/ou
mais "elegante".
Segue abaixo minha antiga programação no sas e no R (tentei anteriomente
dentro de um for (loop),
mas fica muito demorado).
Att,
Mauricio M. Oliveira
Programação no SAS:
if TP_PRODUTO='RM'
then pai=COMPRESS('RM'||Cod_Rebanho||racapai||ano||nomepai,' ');
else if livropai^=' ' & registropa^=' ' & registropa^='0' &
registropa^='-'
then pai=COMPRESS(livropai||'.'||registropa,' ');
else if nomepai=' ' & tatuagempa=' '
then do;
pai=COMPRESS(Cod_Rebanho||raca||ano||"DESC",' '); TP_PRODUTO='RM'; end;
else
pai=COMPRESS(Cod_Rebanho||racapai||tatuagempa||nomepai,' ');
Script no R:
Base[,"PAI"][Base[,"TP_PRODUTO"] == "RM"] <-
paste("RM",Base[,"Cod_Rebanho"][Base[,"TP_PRODUTO"] == "RM"],
Base[,"RACAPAI"]
[Base[,"TP_PRODUTO"] == "RM"], Base[,"anoN"][Base[,"TP_PRODUTO"] ==
"RM"], Base[,"NOMEPAI"][Base[,"TP_PRODUTO"] == "RM"], sep="")
Base[,"PAI"][Base[,"TP_PRODUTO"] != "RM" & Base[,"LIVROPAI"]!="" &
Base[,"REGISTROPA"]!="" & Base[,"REGISTROPA"]!="0" & Base[,"REGISTRO"]!=
"-"] <- paste(Base[,"LIVROPAI"][Base[,"TP_PRODUTO"] != "RM" &
Base[,"LIVROPAI"]!="" & Base[,"REGISTROPA"]!="" & Base[,"REGISTROPA"]!="0" &
Base[,"REGISTRO"]!="-"], ".", Base[,"REGISTROPA"][Base[,"TP_PRODUTO"] !=
"RM" & Base[,"LIVROPAI"]!="" & Base[,"REGISTROPA"]!="" &
Base[,"REGISTROPA"]!="0" & Base[,"REGISTRO"]!="-"], sep="")
Base[,"PAI"][Base[,"TP_PRODUTO"] != "RM" & Base[,"NOMEPAI"]=="" &
Base[,"TATUAGEMPA"]==""] <- paste(Base[,"Cod_Rebanho"]
[Base[,"TP_PRODUTO"] != "RM" & Base[,"NOMEPAI"]=="" &
Base[,"TATUAGEMPA"]==""], Base[,"RACA"][Base[,"TP_PRODUTO"] != "RM" &
Base[,"NOMEPAI"]=="" & Base[,"TATUAGEMPA"]==""],"DESC", sep="")
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20121212/a5d7e4fd/attachment.html>
Mais detalhes sobre a lista de discussão R-br