Données catégorielles : analyser et visualiser

R pour les utilisateurs et utilisatrices de SAS

Melinda Higgins, PhD

Research Professor/Senior Biostatistician Emory University

Regrouper des catégories

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

Ajouter la variable recodée bmigt25

# Add one more categorical variable bmigt25
daviskeep <- daviskeep %>%
  mutate(bmigt25 = ifelse(bmi > 25,
                          "2. overwt/obese",
                          "1. underwt/norm"))

# View frequencies for bmigt25 categories
daviskeep %>% with(table(bmigt25))
bmigt25
1. underwt/norm 2. overwt/obese
            161              38
R pour les utilisateurs et utilisatrices de SAS

Tables de contingence : SAS et R

proc freq de SAS, fonction table de R et crosstable du paquet gmodels

R pour les utilisateurs et utilisatrices de SAS

Tests du khi carré : SAS et R

proc freq de SAS et codes R pour chisq.test et options de la fonction crosstable du paquet gmodels

R pour les utilisateurs et utilisatrices de SAS

Table de contingence et test du khi carré

# Save table output of bmigt25 by sex
tablebmisex <- daviskeep %>%
  with(table(bmigt25, sex))
tablebmisex
# Use table object to run chisq.test
chisq.test(tablebmisex)
                 sex
bmigt25             F   M
  1. underwt/norm 107  54
  2. overwt/obese   4  34
Pearson's Chi-squared test with Yates'
continuity correction

data:  tablebmisex
X-squared = 36.759, df = 1, p-value = 1.336e-09
R pour les utilisateurs et utilisatrices de SAS

Tests du khi carré avec le paquet gmodels

# Load gmodel package
library(gmodels)
# Run gmodels::CrossTabs, show column %s and expected values
daviskeep %>%
  with(gmodels::CrossTable(bmigt25, sex,
                           chisq = TRUE,
                           prop.r = FALSE,
                           prop.t = FALSE,
                           prop.chisq = FALSE,
                           expected = TRUE))
R pour les utilisateurs et utilisatrices de SAS

Sortie CrossTable – partie 1

   Contenu des cellules
|-------------------------|
|                       N |
|                 N prévu |
|        N / total colonne |
|-------------------------|

Observations totales du tableau :  199
                | sex
        bmigt25 |         F |         M | Total ligne |
----------------|-----------|-----------|-------------|
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 colonne |       111 |        88 |         199 |
                |     0.558 |     0.442 |             |
----------------|-----------|-----------|-------------|
R pour les utilisateurs et utilisatrices de SAS

Sortie CrossTable – partie 2

Sortie de gmodels::CrossTable() – suite…

 

Statistiques pour tous les facteurs du tableau

Test du khi carré de Pearson
------------------------------------------------------------
Chi^2 =  38.99402     d.f. =  1     p =  4.251066e-10

Test du khi carré de Pearson avec correction de continuité de Yates
------------------------------------------------------------
Chi^2 =  36.75936     d.f. =  1     p =  1.336475e-09
R pour les utilisateurs et utilisatrices de SAS

Graphiques mosaïques : SAS et R

option freqplot de proc freq de SAS pour l'instruction tables et fonction R mosaicplot

R pour les utilisateurs et utilisatrices de SAS

Mosaicplot des proportions catégorielles à deux voies

 

# Make mosaicplot of bmigt25 by sex
mosaicplot(bmigt25 ~ sex,
           data = daviskeep,
           color = c("light blue",
                     "dark grey"),
           main =
             "BMI Categories by Sex")

mosaicplot de bmigt25 et sex du jeu de données daviskeep

R pour les utilisateurs et utilisatrices de SAS

Explorons les associations catégorielles pour les ormeaux !

R pour les utilisateurs et utilisatrices de SAS

Preparing Video For Download...