Capítulo 3 Comece jogando tudo fora

O primeiro passo para adquirir organização e boas práticas é jogar tudo o que você não precisa fora. Tudo.

Vamos começar retirando o que não é necessário no RStudio. Feche todos os códigos que estão como “Untitled”, salve apenas os que forem necessários. Os que estão salvos, feche também. Nada de deixar vários códigos abertos só porque você vai usar amanhã ou porque você usa diariamente.

3.1 Configurando o RStudio

Abra seu RStudio e vá em Tools > Global Options. Deixe marcado apenas as caixas: Wrap around when navigating to previous/next tab e Automatically notify me of updates to RStudio.

Isso mesmo, iremos desmarcar todas as caixas para salvamento automático, salvamento de dados e tudo isso. Isso é inútil. Sim, inútil, e você ficará mal acostumado, esquecerá de salvar seus códigos, esquecerá do que é importante e acabará deixando tudo uma bagunça. Salve TUDO o que for importante em pastas criadas essencialmente para aqueles códigos. Não deixe em qualquer lugar. Da mesma forma em que você guarda seus pertences em lugares apropriados para eles, você vai guardar seus códigos em lugares apropriados também.

Agora, ainda em Global Options > Tools, o próximo passo é ir na seção Packages e desabilite a opção Use secure download method for HTTP. Isso permitirá que você baixe pacotes sem problemas de conexão.

Vá na seção Pane Layout e deixe do jeito mais minimalista possível. Eu deixo dessa forma:

Além disso, eu gosto de minimizar o terceiro painel, o de Packages e Help. Deixo o meu desta forma:

Assim tenho mais espaço para o código, e deixo o console do lado para ver os resultados dos códigos que rodo com mais facilidade. As variáveis ficam logo abaixo do console. Foi difícil de acostumar, mas uma hora você percebe que é muito mais eficiente trabalhar desta forma. E quando estiver usando apenas um dos paineis, maximize apenas ele. Livre-se da poluição visual e de distrações.

Agora, por último e não menos importante, vamos à seção Code e configurar as preferências de código. Aqui faremos a configuração do painel de código. Primeiro, deixe exatamente como está:

Muito provavelmente as únicas caixas que você vai marcar serão a Soft-wrap R source files (para quebra de linha automática) e Use native pipe operator, |> (requires R 4.1+) (para utilizar o pipe nativo |>). Explicarei melhor sobre o pipe nativo na próxima seção.

Por ora, ainda na seção Code, vá à subseção Display e marque as mesmas caixinhas da imagem abaixo:

Não irei aprofundar nesses casos, pois são simples de entender e os nomes são autoexplicativos.

3.2 Pipe nativo, bonito e eficiente

Se você já programa em R ou já tem um pouco de experiência, já deve conhecer o operador pipe (%>%). Ele serve para utilizar o resultado de uma função anterior como argumento da próxima função. Basicamente, escrever:

dataframe <- dplyr::select(dataframe, col1, col2, col3)
dataframe <- dplyr::filter(dataframe, col1 >= 30)
dataframe <- dplyr::arrange(dataframe, col2)

Seria a mesma coisa que escrever:

dataframe <- dataframe %>%
  dplyr::select(col1, col2) %>%
  dplyr::filter(col1 >= 30) %>%
  dplyr::arrange(col2)

Repare como o segundo código é bem mais simples e mais fácil de ser feito e entendido. Utilizar o pipe é sempre a melhor alternativa caso você vá manipular um dataframe mais de uma vez.

Porém, há uma questão. Imagine que você precisa pregar um quadro na parede do quarto e, para isso, precisa de um martelo. Você vai até o seu depósito, pega uma caixa de ferramentas e leva até o seu quarto. Você abre e pega apenas o martelo, faz o seu trabalho, guarda o martelo e guarda a caixa no lugar dela.

Percebeu o quanto de trabalho você precisou para pregar um quadro? Trouxe uma caixa pesada apenas para usar um único martelo. Isso não faz sentido, faz?

Bom, sempre que você usa o pipe original (%>%), você faz isso. Você carrega uma caixa de ferramentas inteira (library(magrittr)) para usar uma única função dele (%>%). A vantagem do pipe nativo (|>) é que você NÃO precisa carregar nenhum pacote. Assim, você não deixa o coitado do seu RStudio sobrecarregado com inúmeras funções que você não vai usar. Por isso, a partir de hoje, vamos apenas utilizar o pipe nativo. Acostume-se com ele, pois ele é mais simples, mais funcional, e, particularmente, bem mais bonito.

A lógica de carregar um pacote no R é a mesma de trazer uma caixa de ferramentas inteira para arrumar apenas um parafuso. E há quem carregue 10, 15 ou até 50 pacotes de uma vez. Você estará trazendo não apenas uma, mas cinquenta caixas de uma vez! E quem vai carregar esse peso todo? O seu RStudio/R, diminuindo a performance da sua máquina e a velocidade de execução do seu código.

Coisas que você precisa parar de fazer urgentemente: carregar pacotes no início do código e carregar inúmeras variáveis que você não vai usar. Irei explicar melhor no próximo capítulo.