Curso R

Aprecie todo o material contido nesse site, como se fosse seu. Zele, propague, critique, contribua. Será um prazer compartilharmos nossas experiências e experienciarmos juntos esse conhecimento!

Ben Dêivide https://bendeivide.github.io/ (UFSJ)https://ufsj.edu.br/

Author Contributions

Sumário

Livro do Curso

Sobre o autor

Natural da cidade de Pau dos Ferros/RN. Formado em Engenharia Agronômica pela Universidade Federal Rural do Semiárido (UFERSA), Mossoró/RN. Pós-Graduação (Mestrado e Doutorado) e Pós-Doutorado em Estatística e Experimentação Agropecuária pela Universidade Federal de Lavras (UFLA), Lavras/MG. Atualmente estou como Professor de Estatística pela Universidade de São João Del-Rei (UFSJ), campus Alto Paraopeba, Ouro Branco/MG. Minhas linhas de pesquisas se concentram em Estatística e Probabilidade, Estatística Experimental, Estatística Computacional (linguagem R), densenvolvimento de pacotes R para análises de dados e ensino da Estatística. Mais detalhes, acesse minha página.

A motivação para estudar a linguagem R se deve a algumas fases experienciadas na vida acadêmica. A primeira foi a paixão pela Estatística. Estando no terceiro período do curso de Agronomia (UFERSA), concorri a tão sonhada monitoria de Estatística, orientada pelo Prof. Janilson Pinheiro de Assis (UFERSA). Nessa fase houve muitas conversas e conselhos para seguir em uma pós-graduação na área da Estatística. Se tornou amor quando fui impulsionado pelas leituras de apostilas e o encanto por um programa estatístico chamado SISVAR, do Prof. Daniel Furtado Ferreira (UFLA), Figura 1. Isso resultou em todo amadurecimento profissional durante o mestrado e doutorado sob a orientação do Prof. Daniel, e até hoje, estamos em constante processo de desenvolvimento de pesquisa, com o objetivo de propagar conhecimento.

Daniel Furtado na Serra da Bocaina (Lavras/MG).^[Fonte das fotos: Acervo pessoal de Daniel Furtado]

Figure 1: Daniel Furtado na Serra da Bocaina (Lavras/MG).1

Ainda durante a graduação, além de conhecer os materiais de Estatística do Professor Daniel, comecei a ler os materiais introdutórios em R, que costumeiramente, ele postava em sua página institucional. Mas o passo inicial para me guiar ao estudo do R, foi idealizado por uma apostila do Professor Paulo Justiniano Ribeiro Júnior (UFPR), intitulada Introdução ao Ambiente Estatístico R. As primeiras leituras desse material, me trouxe um bom conhecimento inicial, sobre a linguagem R, ao mestrado na UFLA.

Tudo isso me levou a essa outra grande paixão hoje que é estudar essa linguagem. Com o apoio inicial do Prof. Daniel Furtado, durante a pós-graduação, e agora na UFSJ, com os alunos que trabalham comigo de iniciação científica, juntos com mais alguns outros parceiros de estrada, chegamos a publicação de alguns pacotes R sob o CRAN, segue em ordem de publicação, SMR, midrangeMCP, TVMM, cppcor, MCPtests. Para projetos futuros, temos os pacotes statscience, meupacoter, leem (Laboratório de Ensino à Estatística e Matemática) dentre outros ainda não disponíveis.

Para saber mais sobre o autor, veja a seção autor, na barra de navegação da página, ou acesse minha página [pessoal/profissional]

local de trabalho (UFSJ), campus Alto Paraopeba

Proposta do curso

O curso R não tem como objetivo principal de ensinar análise de dados. Mas sim, proporcionar a você um conhecimento sobre a linguagem R, de modo que consiga usufruir todos os recursos que ela possa lhe proporcionar.

Ainda como complemento, não queremos nesse material, convencê-lo a utilizar a linguagem R, pois a melhor linguagem é aquela que você domina. Contudo, pretendemos lhe mostrar que os recursos utilizados pelo R não estão mais limitados a própria análise de dados. Um exemplo é esse material, que nesse momento usufruo do R para repassar as minhas experiências sem ao menos ter o domínio sobre linguagens do tipo HTML, CSS, JavaScript, dentre outras, necessárias para uma boa criação de página web.

Dessa forma, propormos um entendimento sobre a sintaxe e semântica de como a linguagem R é desenvolvida. Com isso, você será capaz após esse curso, estudar um pouco mais sobre essa ciência que nos últimos anos vem ganhando mais evidência, que é a Estatística. Tudo isso devido ao grande volume de informações obtidos nessa era tecnológica. Juntamente com ela, o R se tornará uma poderosa ferramenta com o qual você poderá entender os padrões que estão por trás dos dados, que por sinal, é a moeda valiosa do momento, ou melhor, sempre foi!

Mas não só apenas análise de dados, aprenderemos também recursos diversos na área da computação, como programação defensiva, desenvolvimento de interfaces gráficas, paralelização. Ensinaremos também o desenvolvimento de materiais como artigos, livros, websites, blogs, dashboards. Por fim, chegaremos a maior cobiça de um programador R, desenvolver seu próprio pacote R.

Repararam que em muitos momentos utilizamos o artigo “o” para a linguagem R. Pois é, isso ocorre porque ela também é considerada um software. Daí, também podemos chamá-la de software R, ou preferivelmente, ambiente R.

O material curso R apresentará três módulos:

A seguir, explanaremos sobre cada um dos módulos.

Programação em R (Nível Básico)

O primeiro módulo compreenderá um breve histórico sobre a linguagem, o conhecimento da sintaxe e semântica da linguagem R, compreendendo as estruturas bases da linguagem, sobre o que é um objeto e como construir uma função, o entendimento sobre fluxos de controle. O que é um pacote, carregar e anexar um pacote, e quem são as pessoas que fazem parte da manutenção dessa linguagem, também serão assuntos desse primeiro módulo. Caminhos de busca, ambientes e namespaces, teremos noções básicas. Algo muito interessante, que pode mudar a sua vida como programação em R são as boas práticas para a escrita de um código R, tema também abordado nesse módulo.

Para acessar o material, segue: Programação em R (Nível Básico).

Programação em R (Nível Intermediário)

Esse módulo irá caracterizar melhor o ambiente R quanto ao seu escopo léxico, como linguagem interpretada, como programação funcional, como programação meta-paradigma, como programação dinâmica; apresentaremos manipulações de objetos em mais detalhe, bem como o surgimento de alguns outros objetos como tibble, cópias de objetos. Uma característica do ambiente R é que a linguagem pode ser orientada a objetos e isso será estudado nesse módulo. Apresentações gráficas também serão abordadas. Introduziremos ao desenvolvimento de pacotes R, e aprofundaremos sobre os ambientes R. Daremos uma ênfase ao uso do banco de dados. E por fim, para uma divulgação de todos os materiais, também mostraremos como apresentar seu conhecimento no ambiente R, por meio da criação de documentações no R, que vai desde a criação de páginas Web (estatística e dinâmica), documentações de pacotes, criação de livros, relatórios, dentre outras.

Para acessar o material, segue: Programação em R (Nível Intermediário).

Programação em R (Nível Avançado)

Em contrução…

Referências dos curso

Citaremos alguns livros e materiais utilizados para o desenvolvimento desse curso, tais como:

Onde encontrar os nossos materiais

Temos dedicado uma parte do nosso trabalho no desenvolvimento de materiais em R, dos quais podem ser encontrados em: Ciencia e Progresso, Github e página pessoal.

Pacotes R utilizados para esse curso

Segue uma lista dos pacotes utilizados para o desenvolvimento do material desse curso:

Pacote Objetivo para o curso
lobstr Auxilia no estudo sobre a sintaxe do pacote
codetools Auxilia no estudo sobre a sintaxe do pacote
XR Auxilia no estudo sobre a sintaxe do pacote
rlang Auxilia no estudo sobre a sintaxe do pacote
sloop Auxilia a compreender interativamente a programação orientada a objetos
styler Auxilia no estilo de código
formatR Auxilia no estilo de código
distill Criação da página

Instalação do R e do RStudio

A seguir, apresentaremos as subseções para a instalação da linguagem R e do RStudio. Em todo nosso curso utilizaremos o sistema operacional Windows. Contudo, se esse não é o seu sistema operacinal, não haverá problema no entendimento sobre o R. Assim, convencionaremos a todos a utilização do RStudio, uma vez que poderá ser instalado nas principais plataformas de sistema operacional.

SO Windows

Para a instalação do R e do RStudio, como também do rtools, convidaremos para a seção Instalação do R e do RStudio do primeiro módulo desse curso, que é Programação em R (nível básico).

SO Linux (Ubuntu)

Um vídeo produzido pelo nosso canal do Youtube/Ben Dêivide, mostra falcilmente como realizar a instalação do R e o RStudio pelo Linux:

Uma outra opção pode ser um vídeo produzido pelo Canal PPGC UFSC (Youtube), mostra falcilmente como realizar a instalação do R e o RStudio pelo Linux:

SO MAC

Um vídeo produzido pelo Canal PPGC UFSC (Youtube), mostra falcilmente como realizar a instalação do R e o RStudio pelo MAC:

Adler, Joseph. 2012. R in a Nutshell. Sebastopol: O’Reilly Media.
Chambers, John M. 2008. Software for Data Analysis: Programming with R. Statistics and Computing. New York: Springer.
———. 2016. Extending R. The R Series. Boca Raton, Florida: Chapman; Hall/CRC.
Chambers, John M., and Trevor J. Hastie. 1993. Statistical Models in S. London: Chapman & Hall.
Grosser, Malte, Henning Buman, and Hadley Wickham. 2021. Advanced R Solutions. 2nd ed. Boca Raton, Florida: Chapman; Hall/CRC. https://adv-r.hadley.nz/.
Wickham, Hadley. 2015. R Packages. 2nd ed. O’Reilly Media. https://r-pkgs.org/index.html.
———. 2019. Advanced R. 2nd ed. Boca Raton, Florida: Chapman; Hall/CRC. https://adv-r.hadley.nz/.

  1. Fonte das fotos: Acervo pessoal de Daniel Furtado↩︎

References