3.1 Pedindo Ajuda

Na linguagem R é possível fazer bastante coisa à base da tentativa e erro. Além disso, grande parte do conhecimento é escalável, isto é, aprender a utilizar uma função é meio caminho andado para aprender todas as outras funções que operam de forma semelhante2.

No entanto, a intuição não é infalível, e recorrentemente vamos precisar de ajuda para rodar alguma função ou descobrir como fazer alguma tarefa no R. Felizmente, a comunidade R é bem ativa e existem vários lugares para buscar respostas. Nesta seção, vamos apresentar algumas dessas maneiras.

Arte por Allison Horst (@allison_horst). Veja nas Referências onde encontrá-la.

Figura 3.1: Arte por Allison Horst (@allison_horst). Veja nas Referências onde encontrá-la.

No R, há quatro principais entidades para se pedir ajuda:

  • Help/documentação do R
  • Google
  • Stack Overflow
  • Coleguinha

A busca por ajuda é feita preferencialmente, mas não necessariamente, na ordem acima.

3.1.1 Documentação do R

A documentação do R serve para você aprender a usar uma determinada função. Se você não sabe o que é uma função, não se preocupe. Discutiremos esse tópico nas Seções 3.3 e 3.11.

Você pode acessar a documentação de uma função3 através de dois comandos: ?nome_da_funcao ou help(nome_da_funcao). Por exemplo, para acessar a documentação da função mean, fazemos:

?mean
# ou
help(mean)

Algumas dicas:

  1. Leia a seção Usage para ter noção de como usar a função.
  2. Os parâmetros da função estão descritos em Arguments.
  3. Os exemplos no final são particularmente úteis.
  4. Caso essa função não atenda às suas necessidades, a seção See Also sugere funções relacionadas.

Alguns pacotes possuem tutoriais de uso mais completos. Esses textos são chamados de vignettes e podem ser acessados com a função vignette(package = 'nomeDoPacote'). Por exemplo, vignette(package = 'dplyr').

3.1.2 Google

Há uma comunidade gigantesca de R gerando diariamente uma infinidade de conteúdos e discussões. Não raramente, você irá encontrar discussões sobre o seu problema simplesmente o descrevendo no Google. Pesquisas em inglês aumentam consideravelmente a chance de encontrar uma resposta.

Quando você recebe um erro na tentativa de rodar algum código no R e não sabe o que está errado, uma boa estratégia é pesquisar a mensagem de erro no Google. Essa deve ser sua primeira tentativa para resolver o problema. Repare na imagem abaixo o ‘r’ adicionado na busca. Isso ajuda bastante a encontrar uma solução.

log("5")
## Error in log("5"): non-numeric argument to mathematical function

3.1.3 Stack Overflow

O Stack Overflow e o Stack Overflow em Português são sites de Pergunta e Resposta amplamente utilizados por todas as linguagens de programação, e o R é uma delas. Nos EUA, chegam até a usar a reputação das pessoas dentro da plataforma como diferencial no currículo!

Provavelmente o Google lhe indicará uma dessas quando você estiver procurando ajuda. E quando todas as fontes possíveis de ajuda falharem, o Stack Overflow lhe dará o espaço para criar sua própria pergunta.

Um ponto importante: como fazer uma boa pergunta no Stack Overflow?

No site, existe um tutorial com uma lista de boas práticas, que se encontra aqui. Resumindo, as principais dicas são

  • fazer perguntas concisas;
  • fazer perguntas específicas;
  • ter mente aberta; e
  • ser gentil.

Porém, no caso do R, há outro requisito que vai aumentar muito sua chance de ter uma boa resposta: exemplinho minimal e reprodutível.

  • Ser minimal: usar bancos de dados menores e utilizar pedaços de códigos apenas suficientes para apresentar o seu problema. Não precisa de banco de dados de um milhão de linhas e nem colocar o seu código inteiro para descrever a sua dúvida.

  • Ser reprodutível: o seu código deve rodar fora da sua máquina. Se você não fornecer uma versão do seu problema que rode (ou que imite seu erro), as pessoas vão logo desistir de te ajudar. Por isso, nunca coloque bancos de dados que só você tem acesso. Use bancos de dados que já vem no R ou disponibilize um exemplo (possivelmente anonimizado) em .csv na web para baixar. E se precisar utilizar funções de algum pacote, especifique os pacotes que você usou.


  1. Essa ideia é um dos princípios por trás do tidyverse.↩︎

  2. Bases de dados presentes em pacotes também têm documentação, e geralmente é possível encontrar o significado de cada variável nela. Por exemplo, help(mtcars).↩︎


Curso-R