Guia do Participante

Como preparar o computador e seguir as actividades dos dois dias do workshop.

0 Bem-vindos ao Workshop!

Olá! Se estão a ler isto, é porque vão participar (ou estão neste momento a participar) no workshop de introdução ao R. Este é o vosso guia de navegação para os próximos dois dias.

Datas: 6 e 13 de Fevereiro de 2026

Formador: João Oliveira Santos (joao.santos@ispa.pt)

Organização: CICPSI

Horário: 09h30 às 18h00 (com pausas, claro!)

DicaGuardem o Link deste Site!

Guardem o link do site nos favoritos, ou de outra forma. Vão precisar dele durante todo o workshop. O site tem links para todos os tutoriais, exercícios e materiais de apoio.

1 Como Vai Funcionar Este Workshop?

Neste workshop vão aprender fazendo. Depois de uma breve apresentação, trabalham nos tutoriais e exercícios, individualmente, em pares ou em grupos. Eu circulo pela sala para ajudar quando surgirem dúvidas.

O trabalho está organizado para que possam:

  1. Praticar o que acabam de aprender;
  2. Encontrar e corrigir erros no vosso próprio código;
  3. Trabalhar ao vosso ritmo, demorando mais nas partes que vos custam;
  4. Pedir apoio quando ficarem presos num problema.

A Estrutura de Cada Módulo

Cada módulo terá esta estrutura:

  • Mini-apresentação inicial (10-15 min): Apresento os conceitos principais, a estrutura e objectivos do módulo

  • Trabalho autónomo com tutoriais e exercícios: Vocês seguem os tutoriais interactivos ao vosso próprio ritmo, em grupos, pares, ou individualmente

  • Apoio individualizado contínuo: Eu circulo pela sala, ajudo a identificar erros no código e esclareço dúvidas, incluindo sobre como aplicar o que aprendemos à vossa investigação

  • Projecto capstone: Fazer uma análise de dados desde a importação dos dados à escrita dos resultados, usando o que aprendemos em cada módulo. O projecto não será executado todo de uma vez, mas ao longo de todo o workshop.

  • Pontos de situação (checkpoints, 20/30 min): Paramos todos, verificamos onde está cada um e resolvemos problemas comuns, para que possam continuar a trabalhar

  • Síntese e discussão do módulo: Resumo dos pontos-chave e partilha de experiências antes de avançarmos

NotaI have a plan

Sei que pode parecer estranho não ter 200 slides para 16 horas de apresentação. Mas isto é completamente intencional.

É muito difícil aprender programação…

Pois é!!!

se estivermos apenas a assistir e a compreender as ideias. Programar exige também prática e memória procedimental.

Seria estranho um workshop de ciclismo maioritariamente teórico, apenas com pequenos momentos para andarem de bicicleta.

Os tutoriais que vamos usar têm sido desenvolvidos e revistos ao longo de vários anos, em workshops e aulas. Podem voltar a eles depois da formação, quando precisarem de recordar uma operação ou adaptar um exemplo.

Se precisarem de mais explicação em algum momento, digam! Posso adaptar. Mas experimentem esta abordagem primeiro: podem surpreender-se com os resultados!

Surpreendidos pela positiva ou negativa?

Só o tempo o dirá :)

2 Preparação

Antes de começarmos, certifiquem-se de que têm instalado:

R e RStudio

O pipe nativo |> usado nos tutoriais exige R 4.1 ou superior. Este é apenas o mínimo para essa sintaxe; os pacotes podem exigir versões mais recentes.

Nota: se já usam outro IDE, podem seguir o workshop na mesma. Não assumimos que usam o RStudio, mas, se não têm experiência com nenhuma linguagem de programação (ou se perguntam “que raio é um IDE?”), o melhor será instalarem o RStudio.

Pacotes do R

Foi-vos pedido para instalarem alguns pacotes. Se ainda não o fizeram, por favor, façam-no já.

Corram o bloco seguinte na consola, como preparação do ambiente. A instalação faz-se uma vez (ou quando for preciso actualizar os pacotes) e não pertence ao script de análise.

pacotes <- c("tidyr", "dplyr", "ggplot2", # Data manipulation and visualisation
             "readxl", "haven", # Data import
             "palmerpenguins", # One of the example datasets
             "afex", "car", "parameters", "emmeans", "effectsize", # Analysis
             "performance") # Assumption checks

# Install or update the workshop packages (one-off console setup).
install.packages(pacotes)

# Check that every package can be loaded.
sapply(pacotes, require, character.only = TRUE)

No fim, confirmem que o teste de carregamento devolve TRUE para todos os pacotes. Se aparecer FALSE ou uma mensagem de erro, peçam ajuda.

Aviso

A instalação dos pacotes pode demorar 10–15 minutos, dependendo da ligação à internet e do computador. Façam-na já, para não perderem esse tempo durante os exercícios.

Se encontrarem problemas na instalação, chamem-me ao lugar quando chegar o primeiro bloco de trabalho autónomo.

3 Cronograma Detalhado

O horário do workshop pode ser consultado na página inicial do workshop.

Abaixo encontram as actividades, os tutoriais e os exercícios de cada bloco.

4 Dia 1: Introdução ao R e Análise Descritiva

Data: 6 de Fevereiro de 2026

Tema central: Do zero até gráficos apelativos

Projecto Capstone: Metas do Dia 1

Ao longo do workshop vamos construir progressivamente uma análise completa de um único dataset. Hoje os principais objectivos são:

  • Manhã: Aprender a falar, ler e escrever R
  • Tarde: Importar, Limpar, Reformatar e Visualizar Dados

No fim do dia, terão um script que vai desde os dados brutos até gráficos apelativos. Este fluxo de trabalho pode depois ser adaptado aos vossos projectos.

Manhã

Módulo 1

09h30m - 11h00m

Apresentação Inicial (09h30 - 09h45)

  • Apresentações mútuas e expectativas (o que já fizemos, se o plano foi cumprido)
  • Apresentação do workshop (aquilo que estamos a fazer, se o plano ainda estiver a ser cumprido…)
  • Porquê usar o R? As vantagens (e os desafios!)
  • Definições iniciais: o que é o R? o que é o RStudio? o que é programar?

Tutorial 1: As Primeiras Palavras no R

Trabalho autónomo: 09h45 - 11h00m

Conceitos-chave:

  • O R como calculadora
  • Criar e usar variáveis/objectos
  • Funções e argumentos (a metáfora das receitas de cozinha!)
  • A importância dos comentários

Secções e exercícios obrigatórios:

  • Todo o tutorial…
  • Podem ler um pouco na diagonal: vamos continuar a praticar estes conceitos nos tutoriais seguintes
DicaCheckpoint 1 (10h15m)

Como está a correr?

Como está a ser dizer as primeiras palavras nesta linguagem?

Mais confiantes ou mais assustados?

Tutorial 2: A Gramática do R

Trabalho autónomo: 11h00 - 12h15

Conceitos-chave:

  • Vectores: a estrutura de dados mais fundamental do R
  • Tipos de dados (numeric, character, logical, factor)
  • Indexação (como “escolher” elementos específicos)
  • Funções básicas (mean(), sum(), length(), etc.)
Dica

Se se sentem mais confortáveis ou gostam de aprender por tentativa e erro, podem começar pelos exercícios e consultar as secções à medida que surgem dúvidas.

Secções obrigatórias:

Os «Detalhes geek» podem ficar para depois. A família apply e os ciclos não fazem parte do percurso obrigatório deste bloco.

Exercícios obrigatórios:

  • 1–6 e 11–13 da primeira lista numerada de exercícios.

Opcional, para quem já está mais confortável:

Dica

Se já têm experiência podem saltar os que vos parecerem demasiado fáceis. Se estão a ter dificuldades, vão saltando aqueles que são mais semelhantes, para fazerem menos exercícios, mas manterem a variedade. Assim evitam a frustração e pressão temporal, sem deixarem de praticar as competências mais importantes.

Chamem-me ao lugar se este for o vosso caso, para vos ajudar a seleccionar os exercícios mais relevantes.

DicaCheckpoint 2 (11h20)

Calculem a média de um vector numérico.

Todos conseguiram?

Dificuldades?

Tutorial 3: Data Frames

Trabalho autónomo: 12h00 - 12h50

Conceitos-chave:

  • Linhas
  • Colunas
  • Nomes de colunas
Dica

Também neste tutorial podem começar pelos exercícios, se preferirem aprender por tentativa e erro, e voltar à explicação quando precisarem dela.

Secções obrigatórias:

  • Todas

Exercícios

  • Todos
Dica

Se já têm experiência podem saltar os que vos parecerem demasiado fáceis. Se estão a ter dificuldades, vão saltando aqueles que são mais semelhantes, para fazerem menos exercícios, mas manterem a variedade. Assim evitam a frustração e pressão temporal, sem deixarem de praticar as competências mais importantes.

Chamem-me ao lugar se este for o vosso caso, para vos ajudar a seleccionar os exercícios mais relevantes.

Síntese e Discussão (12h50 - 13h00)

Discussão em grupo:

  • Que conceitos foram mais difíceis?
  • Dúvidas acumuladas?
  • Como é que pensam que isto se relaciona (ou não) com o que vocês querem fazer?

Tarde

Módulo 2 (Parte 2): Preparar Dados

14h00 – 16h00

Apresentação Inicial (14h00 – 14h10)

  • O “ciclo” típico: importar → limpar → reformatar → explorar → modelar.
  • Porque é que passamos tanto tempo a preparar dados (spoiler: é normal).

Tutorial 4: Importação de Dados

Trabalho autónomo: 14h10 – 14h35

Secções obrigatórias:

  • Importar pelo menos um ficheiro (idealmente CSV).

Tutorial 5: Limpeza de Dados

Trabalho autónomo: 14h35 – 15h05

Tutorial 6: Reformatação de Dados

Trabalho autónomo: 15h05 – 15h45

Secções obrigatórias:

  • A parte conceptual (o que é “longo” e “largo”).
  • Pelo menos um exemplo de pivot_longer() e um de pivot_wider().
DicaCheckpoint 4 (15h20)

Objectivo mínimo do bloco:

  • Importar um dataset.
  • Fazer uma limpeza simples (e.g., remover NAs numa variável-chave).
  • Fazer uma transformação de formato (largo → longo ou longo → largo).

Com estes passos, já conseguem preparar dados para a exploração seguinte.

Capstone (Dia 1): Importar, Limpar e Reformatar

Trabalho autónomo: 15h45 – 16h00

  • Importar o dataset do capstone.
  • Corrigir nomes de variáveis (se necessário).
  • Garantir tipos correctos.
  • Deixar o dataset no formato mais útil para a exploração/plots.

Módulo 3: Descritivas Numéricas e Gráficos

16h00 – 17h30

Apresentação Inicial (16h00 – 16h10)

  • O que queremos numa exploração inicial: padrões, valores estranhos, diferenças entre grupos.
  • Visualizar primeiro, testar depois.

Tutorial 7: Descritivas Numéricas

Trabalho autónomo: 16h10 – 16h40

Secções obrigatórias:

  • Descritivas básicas.
  • Descritivas por grupo (pelo menos um exemplo).

Tutorial 8: Gráficos no R

Trabalho autónomo: 16h40 – 17h15

Secções obrigatórias:

  • Um gráfico com pontos.
  • Um gráfico por grupo (e.g., boxplot).
DicaCheckpoint 5 (17h00)

Cada pessoa deve conseguir produzir um gráfico que responda a:

“O que é que está a acontecer nos meus dados?”

Não precisa de ser bonito. Precisa de ser útil.

Trabalho autónomo: 17h15 – 17h25

  • Criar 2–3 gráficos sobre o dataset do capstone.
  • Guardar o script (e, se possível, guardar um output/figura).

Fecho do Dia 1 (17h25 – 17h30)

  • O que ficou feito.
  • O que fica para o Dia 2.
  • Perguntas rápidas.

5 Entre Sessões (6 a 13 de Fevereiro)

Desafios para Casa

Consolidem o que aprenderam. Sugestões:

  1. Refaçam os exercícios que vos deram mais dificuldade.
  2. Apliquem aos vossos dados: tentem importar, limpar e visualizar dados de um projecto vosso.
  3. Explorem datasets interessantes: o R tem dezenas de datasets incluídos.
  4. Revisitem os tutoriais que não conseguiram completar durante o workshop.

Datasets para Explorar

library(palmerpenguins) # Provides penguins.

data(mtcars)   # Car characteristics

data(iris)     # Flower measurements

data(sleep)    # Sleep study

data(penguins) # Penguins (our favourite!)
DicaGrupo de Apoio (RUGGED)

Se quiserem continuar a praticar (e ter um sítio seguro para fazer perguntas), juntem-se ao RUGGED.

O RUGGED é um grupo informal onde:

  • Trazem problemas reais (dados reais, erros reais, ansiedade real).
  • Fazemos troubleshooting juntos.
  • Partilhamos recursos, scripts e boas práticas.

Link: https://rggd.gitlab.io

Durante o workshop digo-vos como entrar, conforme o canal que estiver activo (mailing list, Discord ou WhatsApp). No Dia 2 podemos reservar cinco minutos para esclarecer onde pedir ajuda.

6 Dia 2: Análise de Dados e Inferência Estatística

Data: 13 de Fevereiro de 2026

Tema central: Modelos estatísticos no R (e terminar o capstone com análises que vocês reconhecem: teste-t, regressão, ANOVA, medidas repetidas).

Projecto Capstone: Metas do Dia 2

No Dia 2, o capstone evolui de “exploração” para “análise inferencial”:

  • Manhã: Modelos lineares como abordagem geral (teste-t e regressão).
  • Tarde: Comparação de grupos e medidas repetidas (incl. ANOVA mista).

No fim, a meta é terem um script completo que conseguem ler, correr e adaptar.

Manhã

Módulo 4: Modelos Lineares

Parte 1 (09h30 – 12h00): Capstone — teste-t para uma amostra

Estratégia: - 10–15 min de enquadramento. - Depois: vocês fazem; eu circulo.

DicaCheckpoint (10h30)

Objectivo mínimo:

  • Ajustar um lm() simples.
  • Saber ler: coeficientes, erro-padrão, t, p.

Se ainda não conseguem interpretar estes elementos, peçam ajuda antes de avançar.

Parte 2 (12h00 – 13h00): Capstone — regressão linear

Almoço

13h00 – 14h00

Tarde

Módulo 4 (Continuação): Comparação de Grupos

14h00 – 16h00

  • Tutorial: Modelos Lineares
  • Capstone: comparação de grupos (teste-t independente / ANOVA como lm())
DicaCheckpoint (15h00)

Objectivo mínimo:

  • Conseguir comparar dois (ou mais) grupos.
  • Saber o que é o “efeito do grupo” no output.

Se isto estiver sólido, já conseguem analisar grande parte dos estudos “clássicos”.

Módulo 5: Medidas Repetidas

16h00 – 17h00

Módulo 6: Recursos + RUGGED

17h00 – 17h30

  • Onde procurar ajuda (docs, cheatsheets, “como ler um erro”).
  • Como continuar a aprender.
  • RUGGED: como manter a prática (sem estar sozinho).
DicaFecho

O objectivo do workshop não é “fazer tudo”.

O objectivo é:

  1. perderem o medo do R
  2. adoptarem um workflow realista
  3. saberem onde procurar ajuda
  4. conseguirem continuar sem mim