terça-feira, 5 de dezembro de 2017

R em 5 minutos!


Eu admito! Tinha uma certa aversão à linguagem R. Talvez fosse uma alergia, sei lá… Mas eu comecei a trabalhar com ela e obtive excelentes resultados, com pouco esforço. Como tenho visto algumas pessoas reclamarem muito sobre a dificuldade em criar um ambiente para executar análises usando R, decidi escrever este guia de 5 minutos para instalar um ambiente completo para usar R em trabalhos de data science.



Primeiro: Instale o Anaconda!



Baixe um pacote do Anaconda para a sua versão de sistema operacional (Windows, Linux ou MacOS):

Windows

Dê Double-click no arquivo de instalação .EXE e siga as instruções.

Linux

Execute: bash Anaconda-latest-Linux-x86_64.sh

MacOS

Execute: bash Anaconda3-latest-MacOSX-x86_64.sh

Segundo: Crie um ambiente virtual


O Anaconda trabalha com ambientes virtuals, que não afetam o seu computador. Você precisa criar um ambiente virtual para seus projetos R. Utilizando um editor de textos, crie um arquivo como este:

name: rdatascience
dependencies:
  - r-irkernel
  - r-essentials

A indentação (quantidade de espaços) é muito importante neste tipo de arquivo. Salve-o com um nome significativo, como: "rds-env.yml".

Agora, abra uma janela Terminal ou um Prompt de Comandos no Windows (sim, aquela tela preta!). Mude para a sua pasta de trabalhos, como "meusDocumentos" ou algo similar, e digite:

conda env create -f rds-env.yml

Se o arquivo "rds-env.yml" estiver em outra pasta, informe seu caminho completo ou copie-o para a pasta atual.

Finalmente: Crie um Notebook Jupyter


Agora, você pode iniciar o ambiente Jupyter, que abre uma janela de navegador para você trabalhar. Primeiramente, é preciso ativar o ambiente virtual:

  • MS Windows: digite: "activate rdatascience";
  • MacOS or Linux: digite: "source activate rdatascience".

Na mesma tela, digite:

jupyter notebook

E pronto! Uma nova janela de navegador vai aparecer:


Vê aquele botão "New", no canto superior direito (abaixo do botão "Logout")? Clique nele e escolha "R":




Pronto! Um novo "Notebook" para trabalhar com R! O notebook tem células, e, em cada uma, podemos ter código-fonte R ou texto no padrão Markdown. Markdown é um formato "bonitinho" para textos. Você pode alterar o tipo de célula utilizando um combo na toolbar superior. Existe um combo marcado "Code", indicando que esta é uma célula de código-fonte R. Você pode mudar para "Markdown" e escrever comentários.

Criando um modelo de regressão linear

Agora, vamos brincar um pouco! O R vem com um dataset de "brinquedo" chamado "cars" e é muito fácil trabalhar com ele. Digite o texto seguinte na primeira célula e tecle SHIFT+ENTER:

head(cars)

Você deverá ver algo assim:


speed
dist
4
2
4
10
7
4
7
22
8
16
9
10


Este é o conteúdo do dataset (pelo menos as primeiras linhas). O comando "head" mostra as primeiras linhas de um dataset. Ele possui duas colunas ("speed" e "dist") com alguns valores.

Agora, vamos plotar um gráfico de dispersão dele! Não tema, é muito fácil! Digite o texto a seguir na próxima célula vazia:

scatter.smooth(x=cars$speed, y=cars$dist, main="Scatter Speed vs Distance") 

E tecle SHIFT+ENTER! Voilà:

Um gráfico de dispersão mostrando a relação entre speed (velocidade) e dist (distância)! Nos argumentos do comando, especificamos que o "x" representaria a coluna "speed" do dataset "cars", e o "y" representaria a coluna "dist", do mesmo dataset. Só isso!

Agora, vamos criar um modelo de regressão linear. O quê? Ahn… Você não sabe o que é regressão linear? Sem problemas! Compre meu novo livro ou leia esse tutorial:

Apenas seja uma pessoa corajosa e digite isso:

model <- lm(dist ~ speed, data=cars)

Estamos criando um modelo de regressão usando "dist" como variável dependente de "speed". Agora, vamos exibir o modelo, digitando essa linha:

print(model)

Call:
lm(formula = dist ~ speed, data = cars)

Coefficients:
(Intercept)        speed  
    -17.579        3.932  
E vamos ver um resumo do modelo, incluindo o r-quadrado, digitando essa linha:

summary(model)

Call:
lm(formula = dist ~ speed, data = cars)

Residuals:
    Min      1Q  Median      3Q     Max 
-29.069  -9.525  -2.272   9.215  43.201 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) -17.5791     6.7584  -2.601   0.0123 *  
speed         3.9324     0.4155   9.464 1.49e-12 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 15.38 on 48 degrees of freedom
Multiple R-squared:  0.6511,    Adjusted R-squared:  0.6438 
F-statistic: 89.57 on 1 and 48 DF,  p-value: 1.49e-12
É isso ai!

Sim! Você criou um modelo completo de regressão usando R!

Nenhum comentário:

Postar um comentário