R para Ciência de Dados
- Descrição
- Currículo
- Grade
R para Ciência de Dados
Bem-vindo ao curso de R para Ciência de Dados! Este programa intensivo e prático foi meticulosamente desenhado para capacitá-lo a dominar a linguagem R e seu ecossistema, transformando dados brutos em insights acionáveis e soluções analíticas robustas. Você não apenas aprenderá a manipular, visualizar e modelar dados, mas também a alavancar o poder do R para automatizar processos, integrar diferentes fontes de dados e se destacar como um profissional inovador e indispensável no mercado atual.
Trata-se de um curso 100% gratuito, originalmente desenvolvido para a trilha de Ciência de Dados do Programa Justiça 4.0, fruto da cooperação entre CNJ, PNUD e UFPR, e agora também disponível nesta plataforma pessoal, com autorização expressa, para ampliar seu alcance.
Objetivos do Curso
Ao final deste curso, você será capaz de:
- Dominar os fundamentos da linguagem R: Compreender a sintaxe, operações básicas, tipos de dados e estruturas atômicas como vetores.
- Configurar e otimizar seu ambiente de trabalho em R: Realizar a instalação do R e de ambientes de desenvolvimento integrados (IDEs) como o RStudio, além de explorar editores gerais como Emacs e VS Code.
- Gerenciar dados em diferentes formatos: Importar e exportar dados de arquivos de texto (CSV, TSV, FWF), planilhas eletrônicas (Excel), JSON, HTML e conectar-se a bancos de dados relacionais (SQLite, MySQL) e não relacionais, além de trabalhar com formatos modernos como Feather e Parquet.
- Realizar a manipulação e arrumação de dados com o Tidyverse: Utilizar pacotes essenciais como
tibblepara estruturas de dados,readrpara importação,tidyrpara organização edplyrpara transformações, agregações, filtros, seleções e junções de dados. - Criar visualizações de dados impactantes com
ggplot2: Construir gráficos estáticos e interativos, compreendendo a gramática dos gráficos e suas camadas (dados, estética, geometria, facetas, estatística, sistema de coordenadas e tema), para análises univariadas, bivariadas e construção de mapas. - Implementar estruturas de controle e repetição: Utilizar
if-else,switch,for,whileerepeatpara criar lógicas de programação complexas. - Desenvolver funções personalizadas em R: Encapsular tarefas, definir argumentos (com valores padrão), e aplicar boas práticas de programação, incluindo tratamento de exceções.
- Trabalhar com tipos de dados especiais: Manipular expressões regulares com
stringr, variáveis categóricas comforcatse dados de tempo/data comlubridate. - Utilizar programação funcional com
purrr: Automatizar tarefas e aplicar funções de forma eficiente sobre listas e outras estruturas de dados, evitando loops ineficientes. - Aplicar técnicas de modelagem estatística: Realizar testes de hipótese (para médias, variâncias, proporções, associação, aderência, não paramétricos), construir intervalos de confiança, e implementar modelos como Análise de Variância (ANOVA) e Regressão Linear Simples.
Conteúdo Programático
O curso está organizado em unidades didáticas, cada uma abordando tópicos essenciais para o domínio do R para Ciência de Dados, com ênfase em casos práticos e exemplos aplicados:
-
Unidade 1: Conhecendo a Linguagem R
- Introdução ao R: O que é, história e onde adquirir.
- Características do R: Linguagem de propósito específico, livre, de código aberto, gratuita, extensível e escalável.
- Interoperabilidade e multiplataforma.
- Comunidade e repositórios (CRAN, R Development Core Team).
- Materiais didáticos e recursos de aprendizado.
- Configuração do ambiente: Instalação do R e RStudio IDE (Windows e Linux), outros editores (Emacs, VS Code, Tinn-R).
- Navegação na RStudio IDE: Panéis, menus, atalhos, projetos.
-
Unidade 2: Ambientação ao R
- Modos de execução: REPL (Read-Eval-Print Loop) e Batch.
- Instruções e comentários em R.
- Atribuição de valores e o espaço de trabalho (Global Environment).
- Ordem de procura e namespaces.
- Diretório de trabalho (Working Directory).
- Arquivos da linguagem R:
.Rhistory,.RData,.Rproj,.Rprofile. - Instalação e uso de pacotes (CRAN e GitHub).
- Acesso à documentação:
help,?,apropos,help.search,vignettes.
-
Unidade 3: Aritmética Básica e Vetores
- R como calculadora científica: operações matemáticas (soma, subtração, multiplicação, divisão, potenciação, resto da divisão, raiz, logaritmo, funções trigonométricas, arredondamento).
- Comparações e operadores lógicos (
==,!=,<,<=,>,>=,&,|,!). - Valores especiais:
NA,NULL,Inf,NaN. - Vetores: criação, operação, seleção por índice e nome, modificação de elementos.
- Classes e métodos de objetos (lógico, inteiro, numérico, caractere, fator, complexo, data).
- Funções para criar sequências (
seq), repetições (rep) e amostras (sample,rnorm,runif). - Funções estatísticas descritivas:
length,sum,mean,median,sd,var,max,min,quantile. - Cartões de referência (cheat sheets) para consulta rápida.
-
Unidade 4: Estruturas de Controle e Funções
- Estruturas de controle:
if-else(desvio condicional) eswitch(seleção múltipla). - Versões vetoriais das estruturas de controle.
- Estruturas de repetição:
for,whileerepeat. - Criação de funções: Anatomia, argumentos (formais e atuais), corpo e valor de retorno.
- Cuidados na implementação de funções: Escolha de nomes, argumentos default, tratamento de exceções (
stop,warning,message), modificação de variáveis fora do escopo.
- Estruturas de controle:
-
Unidade 5: Leitura e Escrita de Dados
- Importação de arquivos de texto: CSV, TSV, arquivos de comprimento fixo (FWF), entrada padrão (
scan). - Escrita de arquivos de texto:
writeLines,cat,capture.output,sink. - Importação de fragmentos e clipboard (
readClipboard,dput). - Salvando objetos da sessão:
.Rdatae.RDS(save,load,save.image). - Importação de dados semi-estruturados: JSON (
jsonlite) e arquivos chave-valor (DCF). - Leitura de tabelas HTML de páginas web (
rvest). - Importação de planilhas eletrônicas (Excel, Gnumeric, Google Sheets).
- Conexão a bancos de dados (SQLite, MySQL, PostgreSQL, Oracle, NoSQL).
- Formatos modernos para Big Data: Feather e Parquet.
- Importação de arquivos de texto: CSV, TSV, arquivos de comprimento fixo (FWF), entrada padrão (
-
Unidade 6: Manipulação e Visualização de Dados com Tidyverse – Visão Geral e Tibble/ReadR/Tidyr
- Motivação para manipulação de dados: O tempo gasto na limpeza e organização de dados.
- Visão geral do Tidyverse: Coleção de pacotes com filosofia e sintaxe homogêneas (
readr,tibble,tidyr,dplyr,ggplot2,forcats,stringr,purrr). - Introdução ao
tibble: Reimplementação dodata.framecom melhorias de visualização e consistência. - Importação de dados com
readr: Funções de leitura e escrita mais rápidas,parsingde tipos de dados. - Arrumação de dados com
tidyr: O formato “Tidy” (variáveis em colunas, observações em linhas). Operações de pivotagem (pivot_longer,pivot_wider), preenchimento de NAs (fill,replace_na), separação e união de campos (separate,unite), e trabalho com list-columns (nest,unnest). - Alternativas ao Tidyverse:
data.table(performance) esqldf(SQL no R).
-
Unidade 7: Manipulação de Dados com dplyr
- Visão geral do
dplyr: Principais verbos para transformação e exploração de dados tabulares. - Operações essenciais: Ordenação (
arrange), filtro (filter), e seleção de variáveis (select). - Transformações de conteúdo: Criação e modificação de variáveis (
mutate). - Agregações e resumos: Cálculo de medidas descritivas (
summarize), agrupamento (group_by) e contagem (count). - Junções de tabelas:
inner_join,left_join,full_join,right_join,anti_join,semi_join. - Funções de resumo numérico (e.g.,
describedoHmisc). - Prática coordenada dos verbos do
dplyrcom estudos de caso.
- Visão geral do
-
Unidade 8: Visualização de Dados com ggplot2
- Visão geral dos recursos gráficos no R (Base, Lattice,
ggplot2). - A lógica da gramática dos gráficos: Camadas (
data,aesthetic mappings,geometries,facets,statistics,coordinate systems,theme). - Análise univariada (qualitativas/discretas): Gráficos de barras.
- Análise univariada (quantitativas): Histograma, gráfico de densidade, ECDF.
- Análise bivariada (qualitativas/discretas): Gráficos de barras empilhadas e lado a lado, gráficos de setores/rosca, facetas.
- Análise bivariada (quantitativas): Diagrama de dispersão,
geom_jitter,geom_density_2d,geom_hex, linhas de tendência (geom_smooth). - Análise bivariada (quantitativas e qualitativas): Boxplot, violin plot, dotplot.
- Customização de temas e cores.
- Criação de mapas com
ggplot2egeobr. - Gráficos interativos (
plotly,highcharter,leaflet,rgl,animation).
- Visão geral dos recursos gráficos no R (Base, Lattice,
-
Unidade 9: Tratamento de Dados Especiais e Programação Funcional
- Expressões regulares com
stringr: Detecção, extração, remoção e substituição de padrões de texto. - Variáveis categóricas com
forcats: Reordenação, rotulagem, recodificação e agrupamento de níveis de fatores. - Datas e tempos com
lubridateehms: Conversão, extração de componentes, aritmética de datas e manipulação de fusos horários. - Programação funcional com
purrr: Famíliaapplyno R base, funçõesmap,keep,discard,modify,accumulate,reduce,walkpara automação de tarefas e operações em listas.
- Expressões regulares com
-
Unidade 10: Modelagem Estatística Básica
- Introdução à Inferência Estatística: Testes de hipótese e intervalos de confiança.
- Teste para a média de uma população (Teste T de Student).
- Teste para diferença de médias (amostras independentes e pareadas).
- Testes para a variância (uma população e razão de duas variâncias).
- Testes para proporção.
- Testes não paramétricos (e.g., Wilcoxon).
- Testes para tabela de contingência (Qui-quadrado de independência).
- Testes de aderência (e.g., Kolmogorov-Smirnov).
- Introdução à modelagem estatística.
- Análise de Variância (ANOVA) para um fator.
- Análise de Regressão Linear Simples.
Por que fazer este curso?
- Ferramenta Incomparável para Análise de Dados: R é, sem dúvida, a melhor ferramenta que você pode utilizar para análise de dados e tudo o que envolve dados em geral. Seu poder para a construção de gráficos é incomparável em relação a outras linguagens.
- Aberto e Gratuito: R é uma linguagem de programação livre, de código aberto e gratuita, parte do projeto GNU, e multiplataforma (Linux, macOS, Windows, Android).
- Ampla Adoção e Relevância no Mercado: Muito comum no ambiente acadêmico para ensino de estatística, o R tem sido cada vez mais utilizado no mercado de trabalho por grandes instituições e empresas que reconheceram seu potencial. O R é onde surgem as novidades na parte de modelagem estatística, sendo pioneiro no desenvolvimento de soluções em estatística.
- Eficiência na Ciência de Dados: Embora a tarefa de limpeza e organização de dados possa ser laboriosa e consumir 60% do tempo de um analista, este curso o capacitará a encurtar esse tempo e tornar a tarefa mais poderosa e prazerosa, utilizando bons frameworks como o Tidyverse.
- Reprodução e Escalabilidade: As linguagens de programação, como o R, permitem scripts reproduzíveis, extensíveis, escalonáveis, integráveis e portáveis, diferenciando-se de softwares de “arrasta e solta”.
- Aprender com Qualidade e Facilidade: O R não é uma linguagem difícil de se aprender, e este curso é construído sobre materiais didáticos de excelente qualidade. A linguagem é muito bem documentada, permitindo que você aprenda muito de dentro do próprio R.
- Instrutor Qualificado: Aprenda com o Prof. Dr. Walmes Zeviani, doutor em Estatística e Experimentação Agropecuária, professor universitário desde 2010 e experiente programador R, que ministra cursos desde 2008 e é um dos grandes responsáveis pela ampla adoção do R no ensino de estatística no Brasil.
Prof. Dr. Walmes Zeviani
Prof. Walmes Zeviani possui doutorado em Estatística e Experimentação Agropecuária, foi professor do Departamento de Estatística da UFPR de 2010 a 2024. Hoje é professor da Faculdade de Ciências Agrárias da UFGD. Além de ser um experiente programador R, conta com ampla experiência no ensino de Estatística e Data Science, já ministrou inúmeros cursos de R em diversas instituições de ensino e pesquisa desde 2008. Com sua paixão pelo ensino, ele está pronto para guiar você em sua jornada de aprendizado em Ciência de Dados com a linguagem R!
-
5R: Conhecendo e Configurando o Ambiente
-
6Downloads
-
7Conhecendo a Linguagem
-
8Materiais Essenciais para o Aprendizado
-
9Configurando Ambiente de Desenvolvimento
-
10Instalação R e RStudio Windows
-
11Instalação R e RStudio Linux
-
12Conhecendo a RStudio IDE
-
13Resumo
-
14Termos técnicos
-
15Preenche lacunas
-
16Ambientação à Linguagem R
-
17Primeiros Passos na Linguagem
-
18Execução REPL e Batch
-
19Instruções e Comentários
-
20Atribuição e Workspace
-
21Ordem de Busca e Namespaces
-
22Diretório de Trabalho
-
23Arquivos da Linguagem
-
24Instalação e Uso de Pacotes
-
25Acesso à Documentação
-
26Guia de Sobrevivência
-
27Resumo
-
28Termos técnicos
-
29Aritmética Básica e Fundamentos Essenciais do R
-
30Fundamentos da Aritmética
-
31R como Calculadora Científica
-
32Lógica e Comparação
-
33Cartões de Referência
-
34Entendendo e Operando Vetores
-
35Tipos e Classes de Objetos
-
36Geração de Dados Eficiente
-
37Manipulando Elementos de Vetores
-
38Estatística de Descritiva
-
39Resumo
-
40Termos técnicos
-
41Dominando as Estruturas de Programação em R
-
42Lógica Condicional IF-ELSE
-
43IF-ELSE em Ação
-
44Clareza com SWITCH CASE
-
45Estruturas Condicionais em Vetores
-
46Iterando com FOR
-
47Loops Flexíveis com WHILE
-
48Liberdade com REPEAT
-
49Prática de Loops e Simulação
-
50Desvende o Poder das Funções
-
51Funções para a Fórmula de Bhaskara
-
52Função para Área de um Polígono
-
53Arte de Programar Funções
-
54Desafios Práticos com Funções
-
55Resumo
-
56Termos técnicos
-
57Importação e Exportação de Dados no R
-
58Lendo Dados de Texto Pleno
-
59Explorando Outros Formatos de Arquivo de Texto
-
60Leitura de Dados da Entrada Padrão
-
61Escrevendo Conteúdo para Arquivos
-
62Fragmentos e Persistência de Dados
-
63Salvar Objetos da Sessão
-
64Dados em JSON e HTML
-
65Conectando a Planilhas e Bancos de Dados
-
66Resumo
-
67Termos técnicos
-
68O Ecossistema Tidyverse e Alternativas
-
69Downloads
-
70Manipulação e Visualização Essencial
-
71Entendendo o Ecossistema Tidyverse
-
72Alternativas Poderosas no R
-
73Tibble: O DataFrame Aprimorado
-
74Importação de Dados com Readr
-
75Tidyr: A Base da Arrumação
-
76Tidyr em Ação
-
77Resumo
-
78Termos técnicos
-
88Expressões Regulares, Fatores e Datas, e Programação Funcional
-
89Downloads
-
90A Gramática dos Gráficos
-
91As 7 Camadas Gráficas
-
92Análise Univariada para Qualitativas e Discretas
-
93Análise Bivariada para Qualitativas e Discretas
-
94Análise Univariada para Quantitativas
-
95Análise Bivariada para Quantitativas
-
96Análise Bivariada para Quantitativas e Qualitativas
-
97Construção de Mapas
-
98Personalização e Temas
-
99Resumo
-
100Termos técnicos
-
101Visualização de Dados com GGplot2
-
102Downloads
-
103Expressões Regulares com Stringr
-
104Prática de Expressões Regulares
-
105Variáveis Categóricas com Forcats
-
106Prática com Variáveis Categóricas
-
107Datas e Tempos com Lubridate
-
108Extração de Componentes de Datas
-
109Prática de Operações com Datas, Regex e Fatores
-
110Programação Funcional com Purrr
-
111Prática de Programação Funcional
-
112Resumo
-
113Termos técnicos
-
114Testes de Hipótese e Modelagem Estatística em R
-
115Downloads
-
116Motivação para Testes de Hipótese
-
117Teste T para Média
-
118Teste T para Duas Médias
-
119Testes de Hipótese para Variância
-
120Testes de Hipótese para Proporção
-
121Introdução a Testes Não Paramétricos
-
122Testes de Correlação e Associação
-
123Testes para Tabela de Contingência
-
124Testes de Aderência
-
125Introdução à Modelagem Estatística
-
126Análise de Variância (ANOVA)
-
127Análise de Regressão Linear Simples
-
128Resumo
-
129Termos técnicos