Bem Vindo!
Este livro tem o objetivo de ensinar a linguagem R. O material tem duas especificidades principais:
- É um livro para níveis diversos de experiência – é introdutório, mas expõe conceitos avançados e com profundidade.
- Tem uma abordagem mista – primeiro focando na teoria, fundamentos, e funcionamento da linguagem, mas depois apresentando temas aplicados.
Abaixo explico a motivação para esse estilo, bem como para quem ele pode ser útil.
este livro está em construção. O material aqui presente ainda é um rascunho, o estilo do livro pode vir a sofrer mudanças drásticas. Adicionalmente, a precisão dos conceitos não está 100% garantida.
No momento, o início do livro, até o capítulo 3, está relativamente em ordem.
Por que Este Livro?
Existem diferentes estilos de aprendizagem, alguns preferem “aprender fazendo”, outros preferem “aprender estudando”. Este livro é, em sua maior parte, signatário do segundo. Porém, mesmo se esse não for seu estilo preferido, argumento que ele combina com o estudo de R.
R é uma linguagem única, para o bem e para o mal:
- Ela contém muitas exceções, particularidades, e heranças de outros tempos. Elas são causas comuns de erros e dificuldades de compreensão. Aprender a regra, a teoria, o contexto geral, facilita muito aprender a lidar com exceções da maneira menos dolorosa possível.
- Ela contém ferramentas poderosas e incomuns. A especialização em estatística motiva a existência de construtos nada óbvios, mas muito úteis. Existe uma variedade de estilos (funcionais, orientado ao objeto, metalinguísticos) igualmente importantes, mas difíceis de alcançar sem um estudo mais teórico.
Essas especificidades são exploradas na primeira metade do livro, “Fundamentos”. A ideia é que o leitor fique confiante de saber “como o R funciona”, e não apenas “saber escrever códigos”, mas sem investir tempo nas complexidades não-essenciais. Adicionalmente, introduzo o tidyverse, que dispõe ferramentas poderosas e acessíveis, graças à sua filosofia e sintaxe intuitiva.
Mas claro que o conhecimento aplicado também é quisto (deixemos o estudo puramente teórico para os nerds da ciência da computação). Portanto, na segunda metade do livro, “Ciência de Dados”, foco em aplicar o conhecimento recém adquirido para aprender algumas das tarefas mais comuns em projetos no R: arrumação, manipulação, visualização, e modelagem de dados. Aqui, os conhecimentos da primeira metade permitem um aprendizado mais rápido e profundo.
Antes de seguir adiante, uma palava motivacional: as vezes uma pessoa passa mais tempo estudando um assunto do que deveria, e quanto mais fundo vai, mais difícil é parar de estudar. Esse é o meu caso, mas gostaria de ter companhia nessa situação (ninguém é de ferro). Foi com isso em mente que montei esse material, para dar a oportunidade do leitor fazer o mesmo, “se afundar no R”, da forma mais eficiente possível. Espero que goste!
Organização do Livro
O livro é dividido em quatro partes: “I - Fundamentos: R Base”, “II - Fundamentos: Tidyverse”, “III - Ciência de Dados: Processar e Visualizar”, e “IV - Ciência de Dados: Modelar”.
As bases desse material estão descritas na seção 1.3, já adianto o disclaimer: boa parte do conteúdo deste livro é uma curadoria, adaptação, e tradução dos materiais abaixo.
- Parte I - “R Language Definition”1, “R Internals”2 e “Advanced R” (2e)3.
- Parte II - Documentação do tidyverse4 e do ggplot25, “Data Manipulation in R”6, e “R Programming for Data Science”7.
- Partes III e IV - “R for Data Science” (2e)8 e “R Cookbook” (2e)9.
Introdução
Para começar, exponho alguns temas iniciais, como: a história da linguagem, suas características gerais, porque aprender R; A literatura sobre R, e as referências deste livro.
Também preparo o leitor para iniciar sua jornada, explicando o estilo e didática do livro, bem como mostrando a instalação e interface do RStudio (de uma maneira bastante preguiçosa).
Parte I - Fundamentos: R base
Os conceitos basilares do R costumam ser ensinados rapidamente, para dar prioridade na manipulação de dados e aplicações. Esse curso não fará isso, iremos passar com bastante calma por essa dimensão, tanto porque existem menos tutoriais que fazem isso, mas principalmente, porque aprender sobre como o R funciona com detalhe gera uma série de benefícios:
- Permite aprender fontes comuns de erros e como evitá-las.
- Facilitará o entendimento dos conceitos que empoderam o tidyverse e as diversas aplicações possíveis.
- Permite escrever códigos mais elegantes e, principalmente, mais eficientes.
- Permite entender códigos mais complexos.
Essa abordagem é algo como “ter aulas formais de uma língua”, em oposição a “ensino para turismo”. A utilidade desse enfoque depende de seu objetivo.
Parte II - Fundamentos: Tidyverse
O tidyverse é um conjunto incrível de extensões ao R, com uma filosofia e sintaxe unificada e intuitiva. Ele apresenta ferramentas poderosas para a maior parte das tarefas essenciais em projetos no R.
Nessa parte, explicarei seus fundamentos, relacionando com os conceitos da Parte I, e darei rápidos tutoriais sobre as ferramentas nele contidas. Todas serão imediatamente aplicadas na parte seguinte.
Parte III - Ciência de Dados: Processar
Aqui começa a segunda metade do livro. Inicio respondendo “o que é ciência de dados?”, e em qual formato queremos esse tal de “dados”. A partir daí, o objetivo é aprender a obter, arrumar, manipular, e unir dados, de modo a alcançar esse formato quisto.
Além da formatação, aprenderemos a manipular dados como uma ferramenta de exploração.
Em termos simplistas, a parte III é a parte II aplicada (menos a visualização).
Parte IV - Ciência de Dados: Explorar
A última parte do livro foca em como descrever dados com base em visualizações e modelos.
Iremos aplicar as ferramentas de visualização da parte II para criar gráficos que ajudem a explorar e entender relações presentes nos dados.
Irei explicar o que é um modelo, e apresentar algumas estratégias e frameworks disponíveis. Ao fim, listo referências para outras aplicações de possível interesse.
Treinamento
Contarei mais sobre mim na seção abaixo, mas antes, uma auto-divulgação (que nunca fez mal a ninguém).
Eu aplico aulas personalizadas de R para qualquer tipo de grupo/indivíduo. As aulas podem incluir o conteúdo deste livro e/ou focar em temas aplicados específicos, bem como conter tópicos teóricos de áreas de meu conhecimento – estatística, economia, finanças, matemática, entre outros.
Se tiver interesse, me mande um email! Sou bastante aberto para conversar e criar projetos em conjunto.
Sobre o Autor
Meu nome é Ricardo Semião e Castro, sou mestrando em economia na FGV-EESP, e sou fã de R. Se tiver algum comentário sobre este material, por favor mande em meu email ricardo.semiao@outlook.com. Minhas redes são:
Licença
Esse material, como um todo, está licenciado pela Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.