Obrigado senhores pelas dicas, e desculpem a demora para responder. Estou aprendendo bastante sobre R nesta comunidade.
Abraço à todos. Em 11 de agosto de 2011 17:05, Pedro Rafael <[email protected]>escreveu: > > > Em 1 de agosto de 2011 18:52, jcfaria [via R-br] < > [email protected]> escreveu: > > Complementando as dicas do Benilton, >> >> Em programação orientada a objetos (R é uma delas e usa atualmente >> dois sistemas: S3 e S4) >> algumas vezes o desenvolvedor opta por encapsular um objeto. >> >> Encapsular um objeto (no caso uma função) significa ocultar do usuário >> detalhes usados no desenvolvimento dessa função. >> >> Por exemplo, as funções abaixo (plot.acf*, plot.data.frame*, >> plot.factor*, plot.formula*, etc) estão todas encapsuladas. >> Observe o marcador "*" em todas elas! >> >> > methods(plot) >> [1] plot.acf* plot.data.frame* plot.decomposed.ts* >> [4] plot.default plot.dendrogram* plot.density >> [7] plot.ecdf plot.factor* plot.formula* >> [10] plot.hclust* plot.histogram* plot.HoltWinters* >> [13] plot.isoreg* plot.lm plot.medpolish* >> [16] plot.mlm plot.ppr* plot.prcomp* >> [19] plot.princomp* plot.profile.nls* plot.spec >> [22] plot.spec.coherency plot.spec.phase plot.stepfun >> [25] plot.stl* plot.table* plot.ts >> [28] plot.tskernel* plot.TukeyHSD >> >> Non-visible functions are asterisked >> >> Se você digita o nome de uma delas para ver seu código fonte: >> > plot.data.frame >> >> Recebe a mensagem: Erro: objeto 'plot.data.frame' não encontrado! >> Ou seja, esta função está encapsulada (não visível ao usuário comum). >> >> O operador ":::" lhe permite ter acesso ao código fonte de qualquer >> função encapsulada (não visível): >> >> > graphics:::plot.data.frame >> function (x, ...) >> { >> plot2 <- function(x, xlab = names(x)[1L], ylab = names(x)[2L], >> ...) plot(x[[1L]], x[[2L]], xlab = xlab, ylab = ylab, >> ...) >> if (!is.data.frame(x)) >> stop("'plot.data.frame' applied to non data frame") >> if (ncol(x) == 1) { >> x1 <- x[[1L]] >> cl <- class(x1) >> if (cl %in% c("integer", "numeric")) >> stripchart(x1, ...) >> else plot(x1, ...) >> } >> else if (ncol(x) == 2) { >> plot2(x, ...) >> } >> else { >> pairs(data.matrix(x), ...) >> } >> } >> <environment: namespace:graphics> >> >> >> Posso estar equivocado e gostaria de escutar a opinião da comunidade, >> mas não vejo muito sentido em usar encapsulamento numa linguagem com >> as características do R. >> >> Abs, >> -- >> ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ >> Jose Claudio Faria >> Estatistica - Prof. Pleno >> UESC/DCET/Brasil >> joseclaudio.faria at gmail.com >> ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\ >> _______________________________________________ >> R-br mailing list >> [hidden email] <http://user/SendEmail.jtp?type=node&node=3710920&i=0> >> 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. >> >> >> ------------------------------ >> If you reply to this email, your message will be added to the discussion >> below: >> >> http://r-br.2285057.n4.nabble.com/R-br-Duvida-Operadores-any-e-tp3710751p3710920.html >> To unsubscribe from R-br, click >> here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>. >> >> > > > > -- > Saudações, > Pedro Rafael Diniz Marinho - Estatístico SES-PB > Currículo Lattes: > http://buscatextual.cnpq.br/buscatextual/visualizacv.jsp?id=K4250792T6 > > -- Saudações, Pedro Rafael Diniz Marinho - Estatístico SES-PB Currículo Lattes: http://buscatextual.cnpq.br/buscatextual/visualizacv.jsp?id=K4250792T6
_______________________________________________ R-br mailing list [email protected] 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.
