Aulas de R - Bioestatística 2023.2

Author

Letícia Raposo

Aula 1

Na aula do dia 25/08/2023, vimos como carregar um pacote, ler um banco de dados e excluir colunas.

OBS: um asterisco antes e depois torna o texto em itálico. Dois asteriscos antes e depois torna o terno em negrito.

# Lendo o pacote 
library(titanic)

# Atribuindo titanic_train para o objeto dados
dados <- titanic_train

# Excluindo colunas
dados$PassengerId <- NULL
dados$Name <- NULL
dados$Ticket <- NULL
dados$Cabin <- NULL

Aula 2

Para começar, vamos ler um banco de dados externo:

library(readxl)
dados_titanic <- read_excel("dados_titanic.xlsx")

Vamos excluir o nome dos passageiros:

dados_titanic$Nome <- NULL

Vamos agora corrigir algumas variáveis:

# Vendo a estrutura dos dados
str(dados_titanic)
tibble [891 × 8] (S3: tbl_df/tbl/data.frame)
 $ Sobreviveu       : num [1:891] 0 1 1 1 0 0 0 0 1 1 ...
 $ Classe           : num [1:891] 3 1 3 1 3 3 1 3 3 2 ...
 $ Sexo             : chr [1:891] "male" "female" "female" "female" ...
 $ Idade            : num [1:891] 22 38 26 35 35 NA 54 2 27 14 ...
 $ N_irmaos_conjuges: num [1:891] 1 1 0 1 0 0 0 3 0 1 ...
 $ N_pais_filhos    : num [1:891] 0 0 0 0 0 0 0 1 2 0 ...
 $ Tarifa           : num [1:891] 7.25 71.28 7.92 53.1 8.05 ...
 $ Porto            : chr [1:891] "S" "C" "S" "S" ...
# Transformando para fator
dados_titanic$Sobreviveu <- as.factor(dados_titanic$Sobreviveu)
dados_titanic$Classe <- as.factor(dados_titanic$Classe)
dados_titanic$Sexo <- as.factor(dados_titanic$Sexo)
dados_titanic$Porto <- as.factor(dados_titanic$Porto)

# Verificando se mudou
str(dados_titanic)
tibble [891 × 8] (S3: tbl_df/tbl/data.frame)
 $ Sobreviveu       : Factor w/ 2 levels "0","1": 1 2 2 2 1 1 1 1 2 2 ...
 $ Classe           : Factor w/ 3 levels "1","2","3": 3 1 3 1 3 3 1 3 3 2 ...
 $ Sexo             : Factor w/ 2 levels "female","male": 2 1 1 1 2 2 2 2 1 1 ...
 $ Idade            : num [1:891] 22 38 26 35 35 NA 54 2 27 14 ...
 $ N_irmaos_conjuges: num [1:891] 1 1 0 1 0 0 0 3 0 1 ...
 $ N_pais_filhos    : num [1:891] 0 0 0 0 0 0 0 1 2 0 ...
 $ Tarifa           : num [1:891] 7.25 71.28 7.92 53.1 8.05 ...
 $ Porto            : Factor w/ 3 levels "C","Q","S": 3 1 3 3 3 2 3 3 3 1 ...

Vamos mudar agora os nomes das categorias das variáveis qualitativas:

levels(dados_titanic$Sobreviveu)
[1] "0" "1"
levels(dados_titanic$Sobreviveu) <- c("Não", "Sim")

levels(dados_titanic$Classe)
[1] "1" "2" "3"
levels(dados_titanic$Classe) <- c("Primeira", "Segunda", "Terceira")

levels(dados_titanic$Sexo)
[1] "female" "male"  
levels(dados_titanic$Sexo) <- c("Feminino", "Masculino")

Vamos mudar agora o nome de uma variável:

colnames(dados_titanic)
[1] "Sobreviveu"        "Classe"            "Sexo"             
[4] "Idade"             "N_irmaos_conjuges" "N_pais_filhos"    
[7] "Tarifa"            "Porto"            
colnames(dados_titanic)[8] <- "Porto_de_Embarque"

Vamos agora criar a variável faixa etária:

dados_titanic$Faixa_Etaria <- cut(dados_titanic$Idade,
                                  c(0, 18, 65, 200))
dados_titanic$Faixa_Etaria

levels(dados_titanic$Faixa_Etaria) <- c("Até 18 anos",
                                        "Maior que 18 anos e até 65 anos",
                                        "Maior que 65 anos")

Estatística Descritiva Univariada

Qualitativa

Vamos trabalhar com a variável classe econômica. Para começar, vamos construir uma tabela de distribuição de frequências.

Podemos observar que a maioria dos passageiros era da terceira classe (55,11%), com a segunda classe contendo a menor proporção de passageiros (20,65%) (Figura 1).

library(summarytools)
freq(dados_titanic$Classe)
Frequencies  
dados_titanic$Classe  
Type: Factor  

                 Freq   % Valid   % Valid Cum.   % Total   % Total Cum.
-------------- ------ --------- -------------- --------- --------------
      Primeira    216     24.24          24.24     24.24          24.24
       Segunda    184     20.65          44.89     20.65          44.89
      Terceira    491     55.11         100.00     55.11         100.00
          <NA>      0                               0.00         100.00
         Total    891    100.00         100.00    100.00         100.00
freq(dados_titanic$Porto_de_Embarque)
Frequencies  
dados_titanic$Porto_de_Embarque  
Type: Factor  

              Freq   % Valid   % Valid Cum.   % Total   % Total Cum.
----------- ------ --------- -------------- --------- --------------
          C    168     18.90          18.90     18.86          18.86
          Q     77      8.66          27.56      8.64          27.50
          S    644     72.44         100.00     72.28          99.78
       <NA>      2                               0.22         100.00
      Total    891    100.00         100.00    100.00         100.00

Vamos agora fazer um gráfico de barras para a variável classe econômica:

# Mudando a ordem das categorias
# dados_titanic$Classe <- factor(dados_titanic$Classe, levels = c("Terceira", "Segunda", "Primeira"))

library(ggplot2)

ggplot(dados_titanic) +
 aes(x = Classe) +
 geom_bar(fill = "slateblue3") +
 labs(x = "Classe econômica", 
 y = "Frequência", title = "Figura 1. Classe econômica dos passageiros do Titanic", caption = "Fonte: a autora") +
 theme_gray() +
 theme(plot.title = element_text(face = "bold.italic", hjust = 0.5))