Capítulo 1 Introdução

Encorajados por Martin Machler, a linguagem de programação R (ou popularmente R) foi elaborada inicialmente em 1990 por Robert Gentleman e Ross Ihaka, ambos membros do Departamento de Estatística da Universidade de Auckland, Nova Zelândia. Embora poucos saibam, a linguagem R foi publicada por Ross e Robert em 1996 no Journal of Computational and Graphical Statistics.

O R é um software livre multiplataforma sobre a linceça GNU (General Public License) similar a linguagem S que foi desenvolvida no laboratório da Bell (agora Nokia Bell Labs) por John Chamber e colaboradores.

O primeiro lançamento oficial foi em 1995. O CRAN (Comprehensive R Archive Network), foi oficialmente anunciado em 23 de Abril de 1997 com 3 espelhos e 12 pacotes. A primeira versão oficial “beta estável” (v1.0) foi lançada em 29 de fevereiro de 2000.

Existem diversas IDEs e editores habilitados para rodar o R. Dentre as IDEs vale destacar o RStudio, Visual Studio e o Tinn-R. O RStudio é provavelmente o editor mais utilizado, não por ser o melhor, mais por ser o único multiplataforma dentre as IDEs citadas. Com relação aos editores que suportam o R podemos citar o Emacs, Vim(Nvim-R plugin) e o mais novo Neovim(Nvim-R plugin).

O R fornece uma grande variedade de técnicas estatísticas (modelagem linear e não linear, testes estatísticos clássicos, análise de séries temporal, classificação, análise multivariada, …) e gráficas (diagrama de dispersão, histrograma, boxplot, scatterplot, dendogramas, …).

Um dos pontos fortes do R é a facilidade com que gráficos de qualidade possam ser produzidos e publicados, incluindo símbolos matemáticos e fórmulas quando necessário. Dentre os pacotes podemos citar o ggplot2,lattice e plotly Outros pontos fortes são:

  1. Código Aberto
  • Isto significa que qualquer pessoa pode trabalhar com o R sem precisar de qualquer licença ou taxa. Ainda, qualquer pessoa pode contribuir para o desenvolvimento do R elaborando pacotes, que é um agregado de itens feito para resolver um dado problema.
  1. Suporte exemplar para transformação de dados
  • Pacotes como o dplyr e readr são capazes de transformar dados confusos em uma forma estruturada.
  1. Variedade de pacotes
  • Com mais de 10.000 pacotes no CRAN, o número está em crescimento exponencial, sendo possível encontrar pacotes por área de conhecimento por meio do CRAN Task Views.
  1. Altamente compatível
  • Isso significa que o R pode ser combinado com C,C++,Java,Fortran e Python. Também pode ser integrado com outras tecnologias como Hadoop e vários outros sistemas de gerenciamento de banco de dados.
  1. Plataforma independente
  • Significa que pode rodar facilmente sob Windows, Linux e Mac.
  1. Relatórios automatizados e atraentes, sejam eles estáticos ou dinâmicos
  • Com os pacotes knitr e rmarkdown é possível combinar o poder da linguagem TeX e markdown com o R, gerando belíssimos e avançados relatórios nos mais variados formados como o PDF, HTML, DOCX entre outros. Ainda, caso o usuário deseje gerar arquivos HTML dinâmicos, com controles deslizantes, checkinbox entre outras funcionalidades, tem o pacote shiny, que de fato remete ao próprio nome, brilhante. Tal pacote é tão fantástico, que falta-me adjetivos e substantivos para descrevê-lo. Só consultando a página oficial do pacote para uma melhor experiência.
  1. Estatística
  • O R é amplamente conhecido como a língua franca das estatísticas. Esta é a principal razão pela qual o R é dominante entre outras linguagens de programação para o desenvolvimento de ferramentas estatísticas.

No entanto, nem tudo são flores! O R assim como qualquer outra linguagem de programação tem algumas desvantagens. Uma delas é que a linguagem se baseia em uma tecnologia antiga, ou seja, de quase 50 anos atras. As outras são:

  1. Tratamento de dados
  • No R os objetos são armazenados na memórica física, o que limita o uso com grandes banco de dados. Embora na atualidade existam diversos pacotes que minimizem tal limitação. Dentre eles podemos citar o bigmemory, HadoopStreaming, Rcpp, RcppParallel e o keras.
  1. Linguagem complicada
  • O R não é uma linguagem fácil de aprender. Possui uma curva de aprendizado acentuada. Devido a isso, pessoas que não têm experiência anterior em programação podem ter dificuldade em aprender R. Combinado a este fator, a falta de empatia por computadores, matemática ou qualquer outra coisa que não use lápis e papel pode ser um agravante.

Por fim, as principais marcas ou organizações que utilizam o software R são: facebook (atual “meta”), google, twitter, microsoft, uber, airbnb, IBM, ANZ, HP, Novartis, Roche, New York Times, Mckinsey, BCG e Bain. Uma lista completa pode ser consultada em https://www.listendata.com/2016/12/companies-using-r.html.