Dados categóricos: analisar e visualizar

R para Usuários de SAS

Melinda Higgins, PhD

Research Professor/Senior Biostatistician Emory University

Agrupar categorias

# Use table() dentro de with() para bmicat
daviskeep %>% with(table(bmicat))
bmicat
1. underwt/norm       2. overwt        3. obese
            161              35               3

Adicionar variável recodificada bmigt25

# Adicione mais uma variável categórica bmigt25
daviskeep <- daviskeep %>%
  mutate(bmigt25 = ifelse(bmi > 25,
                          "2. overwt/obese",
                          "1. underwt/norm"))

# Veja as frequências das categorias de bmigt25
daviskeep %>% with(table(bmigt25))
bmigt25
1. underwt/norm 2. overwt/obese
            161              38
R para Usuários de SAS

Tabelas de contingência no SAS e R

proc freq do SAS, função table do R e crosstable do pacote gmodels

R para Usuários de SAS

Testes qui-quadrado no SAS e R

proc freq do SAS e códigos R para chisq.test e opções da função crosstable do pacote gmodels

R para Usuários de SAS

Tabela de contingência e teste qui-quadrado

# Salve a tabela de bmigt25 por sexo
tablebmisex <- daviskeep %>%
  with(table(bmigt25, sex))
tablebmisex
# Use o objeto tabela no chisq.test
chisq.test(tablebmisex)
                 sex
bmigt25             F   M
  1. underwt/norm 107  54
  2. overwt/obese   4  34
Teste qui-quadrado de Pearson com correção
de continuidade de Yates

dados:  tablebmisex
X-squared = 36.759, df = 1, p-value = 1.336e-09
R para Usuários de SAS

Testes qui-quadrado com o pacote gmodels

# Carregar o pacote gmodels
library(gmodels)
# Executar gmodels::CrossTabs, mostrar % por coluna e valores esperados
daviskeep %>%
  with(gmodels::CrossTable(bmigt25, sex,
                           chisq = TRUE,
                           prop.r = FALSE,
                           prop.t = FALSE,
                           prop.chisq = FALSE,
                           expected = TRUE))
R para Usuários de SAS

Saída do CrossTable - parte 1

   Conteúdo das células
|-------------------------|
|                        N |
|                N esperado |
|           N / Total da col |
|-------------------------|

Total de observações na tabela:  199
                | sex
        bmigt25 |         F |         M | Total da linha |
----------------|-----------|-----------|----------------|
1. underwt/norm |       107 |        54 |            161 |
                |    89.804 |    71.196 |                |
                |     0.964 |     0.614 |                |
----------------|-----------|-----------|----------------|
2. overwt/obese |         4 |        34 |             38 |
                |    21.196 |    16.804 |                |
                |     0.036 |     0.386 |                |
----------------|-----------|-----------|----------------|
   Total da coluna |       111 |        88 |            199 |
                |     0.558 |     0.442 |                |
----------------|-----------|-----------|----------------|
R para Usuários de SAS

Saída do CrossTable - parte 2

gmodels::CrossTable() saída - continuação...

 

Estatísticas para todos os fatores da tabela

Teste qui-quadrado de Pearson
------------------------------------------------------------
Chi^2 =  38.99402     g.l. =  1     p =  4.251066e-10

Teste qui-quadrado de Pearson com correção de continuidade de Yates
------------------------------------------------------------
Chi^2 =  36.75936     g.l. =  1     p =  1.336475e-09
R para Usuários de SAS

Gráficos mosaico no SAS e R

opção freqplot do proc freq do SAS para tables e função mosaicplot no R

R para Usuários de SAS

Mosaicplot de proporções categóricas bidimensionais

 

# Faça um mosaicplot de bmigt25 por sexo
mosaicplot(bmigt25 ~ sex,
           data = daviskeep,
           color = c("light blue",
                     "dark grey"),
           main =
             "Categorias de BMI por sexo")

mosaicplot de bmigt25 e sexo do conjunto de dados daviskeep

R para Usuários de SAS

Vamos explorar associações categóricas nos abalones!

R para Usuários de SAS

Preparing Video For Download...