CHAPITRE I. LES PRINCIPALES FONCTIONS DE GTSUMMARY
Il existe quatre principales maniÚres de personnaliser la sortie du tableau récapitulatif :
Utilisation des arguments de la fonction
tbl_summary()
Ajout dâinformations supplĂ©mentaires avec les fonctions
add_()
Fonctions de personnalisation du tableau
Les thĂšmes gtsummary
Et il est possible dâexporter les tableaux vers diffĂ©rents formats.
0. Préambule sur les opérateurs de pipe
Avant dâexplorer les fonctionnalitĂ©s de gtsummary, il est utile de comprendre les opĂ©rateurs pipe qui facilitent lâĂ©criture de code dans R :
- Opérateur natif |>
Introduit dans R 4.1.0 (2021), lâopĂ©rateur |> permet de simplifier lâĂ©criture des chaĂźnes de traitement. Il envoie la valeur situĂ©e Ă sa gauche comme premier argument Ă la fonction Ă sa droite. Par exemple :
<- data |> head(10) result
équivaut à :
<- head(data, 10) result
- Pipe du tidyverse %>%
Provenant du package magrittr (et souvent utilisĂ© via dplyr ou tidyverse), %>% permet Ă©galement de chaĂźner des opĂ©rations. Ce pipe est particuliĂšrement flexible et permet dâinsĂ©rer des appels de fonctions de maniĂšre plus naturelle. Par exemple :
library(dplyr)
<- data %>%
result filter(age > 30) %>%
summarise(mean_age = mean(age, na.rm = TRUE))
équivaut à :
<- filter(data, age > 30)
filtered_data <- summarise(filtered_data, mean_age = mean(age, na.rm = TRUE)) result
Les deux pipes offrent une syntaxe fluide et lisible. La diffĂ©rence majeure rĂ©side dans la compatibilitĂ© avec dâautres packages et dans certaines subtilitĂ©s syntaxiques, mais dans la pratique, ils remplissent le mĂȘme rĂŽle.
1. Utilisation des arguments de la fonction tbl_summary()
Description :
`Cette fonction peut prendre, au minimum, un data frame comme seul argument dâentrĂ©e et renvoie, dans ce cas, des statistiques descriptives pour chaque colonne du data frame.
## Rows: 7176 Columns: 45
## -- Column specification --------------------------------------------------------------------
## Delimiter: ","
## chr (19): country, zae, region, milieu, hgender, hmstat, hreligion, hnation, hethnie, ha...
## dbl (26): year, hhid, grappe, menage, vague, hhweight, hhsize, eqadu1, eqadu2, hage, dal...
##
## i Use `spec()` to retrieve the full column specification for this data.
## i Specify the column types or set `show_col_types = FALSE` to quiet this message.
library(gtsummary)
|> tbl_summary() dataset
Arguments clés :
La fonction tbl_summary() propose plusieurs options pour modifier lâapparence du tableau rĂ©capitulatif. Voici un aperçu des principaux arguments :
Argument | Description |
---|---|
type |
Définit le type de variable (ex. : continue, catégorielle, etc.) |
sort |
Trie les niveaux dâune variable catĂ©gorielle par frĂ©quence |
percent |
DĂ©finit si les pourcentages doivent ĂȘtre affichĂ©s par colonne, ligne ou cellule |
by |
Permet de stratifier les statistiques selon une variable spécifique (par exemple, pour comparer les groupes) |
label |
Personnalise les étiquettes affichées pour les variables |
statistic |
Définit les statistiques à afficher pour chaque variable, en utilisant souvent la syntaxe {glue} (ex. : "{mean} ({sd})" ) |
digits |
SpĂ©cifie le nombre de dĂ©cimales Ă utiliser pour lâaffichage des statistique |
missing |
Indique sâil faut afficher une ligne avec le nombre de valeurs manquantes (âifanyâ : Affichage explicite des valeurs manquantes si elles existent) |
include |
Liste des variables Ă inclure dans le tableau |
Exemple de script :
library(gtsummary)
<- dataset %>%
tbl_summary_examplesimple tbl_summary(
by = hgender, # Stratification : les statistiques sont calculées séparément pour chaque sexe
include = hage, # Seule 'hage' est dans le tableau
label = hage ~ "Age du chef de ménage",
statistic = all_continuous() ~ "{mean} ({sd})", # Pour les variables continues, afficher la moyenne et l'écart-type
digits = all_continuous() ~ 2, # Val num avec 2 décimales
missing = "ifany" # Affichage explicite des valeurs manquantes si elles existent
)# Affichage du tableau
tbl_summary_examplesimple
Characteristic | Féminin N = 1,0751 |
Masculin N = 6,1011 |
---|---|---|
Age du chef de ménage | 47.97 (15.37) | 45.27 (14.50) |
1 Mean (SD) |
Exemple dâinterprĂ©tation :
- LâĂ©chantillon est dominĂ© par des hommes, qui reprĂ©sentent la grande majoritĂ© des chefs de mĂ©nage (6 101 contre 1 075).
- En moyenne, les chefs de ménage féminins sont plus ùgés (48 ans) que les chefs de ménage masculins (45 ans).
- De plus, la variabilitĂ© de lâĂąge des chefs de mĂ©nage est lĂ©gĂšrement plus Ă©levĂ©e chez les femmes (15.37 contre 14.50).
Allons plus loin en incluant plusieurs variables dans notre tableau âŠ
# Création d'un tableau de synthÚse stratifié par la variable 'hage'
<- dataset %>%
tbl_summary_example tbl_summary(
by = hgender,
include = c(hage, hhsize, hmstat, hreligion, hdiploma, hhandig), # Toutes ces variables seront incluses dans le tableau
label = list(
~ "Ăge du chef de mĂ©nage",
hage ~ "Taille du ménage",
hhsize ~ "Statut matrimonial du chef de ménage",
hmstat ~ "Religion",
hreligion ~ "Plus haut diplÎme du chef de ménage",
hdiploma ~ "Des handicapés dans le ménage ?"
hhandig
), statistic = all_continuous() ~ "{mean} ({sd})",
digits = all_continuous() ~ 2,
missing = "ifany"
)
# Affichage du tableau
tbl_summary_example
Characteristic | Féminin N = 1,0751 |
Masculin N = 6,1011 |
---|---|---|
Ăge du chef de mĂ©nage | 47.97 (15.37) | 45.27 (14.50) |
Taille du ménage | 4.53 (2.68) | 6.77 (4.09) |
Statut matrimonial du chef de ménage | ||
Célibataire | 89 (8.3%) | 260 (4.3%) |
Divorcé(e) | 23 (2.1%) | 27 (0.4%) |
Marié(e) monogame | 229 (21.3%) | 4,123 (67.6%) |
Marié(e) polygame | 171 (15.9%) | 1,401 (23.0%) |
Séparé(e) | 44 (4.1%) | 42 (0.7%) |
Union libre | 9 (0.8%) | 190 (3.1%) |
Veuf(ve) | 510 (47.4%) | 58 (1.0%) |
Religion | ||
Animiste | 55 (5.1%) | 353 (5.8%) |
Autre Réligion | 2 (0.2%) | 2 (0.0%) |
Chrétien | 450 (41.9%) | 1,762 (28.9%) |
Musulman | 563 (52.4%) | 3,965 (65.0%) |
Sans Réligion | 5 (0.5%) | 19 (0.3%) |
Plus haut diplÎme du chef de ménage | ||
Aucun | 862 (80.2%) | 4,689 (76.9%) |
BAC | 36 (3.3%) | 193 (3.2%) |
BEPC | 55 (5.1%) | 339 (5.6%) |
BT | 0 (0.0%) | 5 (0.1%) |
CAP | 5 (0.5%) | 15 (0.2%) |
CEPE | 95 (8.8%) | 631 (10.3%) |
DEUG, DUT, BTS | 5 (0.5%) | 53 (0.9%) |
Doctorat/Phd | 2 (0.2%) | 2 (0.0%) |
Licence | 9 (0.8%) | 101 (1.7%) |
Maitrise | 5 (0.5%) | 38 (0.6%) |
Master/DEA/DESS | 1 (0.1%) | 35 (0.6%) |
Des handicapés dans le ménage ? | ||
Non | 977 (90.9%) | 5,786 (94.8%) |
Oui | 98 (9.1%) | 315 (5.2%) |
1 Mean (SD); n (%) |
2. Ajout dâinformations supplĂ©mentaires avec les fonctions add_()
a. add_overall()
Description :
Ajoute une colonne contenant les statistiques globales (non stratifiées), en complément de celles affichées par groupe.
ParamĂštres importants :
- last : Positionne la colonne globale Ă la fin du tableau (TRUE/FALSE).
- col_label : Permet de personnaliser lâintitulĂ© de la colonne globale.
Exemple de script :
<- tbl_summary_example %>%
tbl_summary_overall add_overall(
last = TRUE,
col_label = "**Colonne des totaux ajouté** {N}"
)
tbl_summary_overall
Characteristic | Féminin N = 1,0751 |
Masculin N = 6,1011 |
Colonne des totaux ajouté 71761 |
---|---|---|---|
Ăge du chef de mĂ©nage | 47.97 (15.37) | 45.27 (14.50) | 45.68 (14.67) |
Taille du ménage | 4.53 (2.68) | 6.77 (4.09) | 6.44 (3.99) |
Statut matrimonial du chef de ménage | |||
Célibataire | 89 (8.3%) | 260 (4.3%) | 349 (4.9%) |
Divorcé(e) | 23 (2.1%) | 27 (0.4%) | 50 (0.7%) |
Marié(e) monogame | 229 (21.3%) | 4,123 (67.6%) | 4,352 (60.6%) |
Marié(e) polygame | 171 (15.9%) | 1,401 (23.0%) | 1,572 (21.9%) |
Séparé(e) | 44 (4.1%) | 42 (0.7%) | 86 (1.2%) |
Union libre | 9 (0.8%) | 190 (3.1%) | 199 (2.8%) |
Veuf(ve) | 510 (47.4%) | 58 (1.0%) | 568 (7.9%) |
Religion | |||
Animiste | 55 (5.1%) | 353 (5.8%) | 408 (5.7%) |
Autre Réligion | 2 (0.2%) | 2 (0.0%) | 4 (0.1%) |
Chrétien | 450 (41.9%) | 1,762 (28.9%) | 2,212 (30.8%) |
Musulman | 563 (52.4%) | 3,965 (65.0%) | 4,528 (63.1%) |
Sans Réligion | 5 (0.5%) | 19 (0.3%) | 24 (0.3%) |
Plus haut diplÎme du chef de ménage | |||
Aucun | 862 (80.2%) | 4,689 (76.9%) | 5,551 (77.4%) |
BAC | 36 (3.3%) | 193 (3.2%) | 229 (3.2%) |
BEPC | 55 (5.1%) | 339 (5.6%) | 394 (5.5%) |
BT | 0 (0.0%) | 5 (0.1%) | 5 (0.1%) |
CAP | 5 (0.5%) | 15 (0.2%) | 20 (0.3%) |
CEPE | 95 (8.8%) | 631 (10.3%) | 726 (10.1%) |
DEUG, DUT, BTS | 5 (0.5%) | 53 (0.9%) | 58 (0.8%) |
Doctorat/Phd | 2 (0.2%) | 2 (0.0%) | 4 (0.1%) |
Licence | 9 (0.8%) | 101 (1.7%) | 110 (1.5%) |
Maitrise | 5 (0.5%) | 38 (0.6%) | 43 (0.6%) |
Master/DEA/DESS | 1 (0.1%) | 35 (0.6%) | 36 (0.5%) |
Des handicapés dans le ménage ? | |||
Non | 977 (90.9%) | 5,786 (94.8%) | 6,763 (94.2%) |
Oui | 98 (9.1%) | 315 (5.2%) | 413 (5.8%) |
1 Mean (SD); n (%) |
Exemple dâinterprĂ©tation :
- LâĂ©chantillon total comprend 7,176 chefs de mĂ©nage.
- LâĂąge moyen global est 45.68 ans tandis que lâĂ©cart-type global est 14.67 ans.
b. add_n()
Description :
Ajoute une colonne indiquant le nombre dâobservations (ou le nombre dâobservations non manquantes) pour chaque variable.
ParamĂštres importants :
- col_label : Modifie lâintitulĂ© de la colonne.
- statistic : Permet de dĂ©finir le format dâaffichage des effectifs.
- footnote : Ajoute une note de bas de tableau explicative.
Exemple de script :
<- tbl_summary_example %>%
tbl_summary_with_n add_n(
col_label = "**Effectif**", # Intitulé de la colonne
statistic = "{N_nonmiss}", # {p_miss}ou {N}...
%>%
) modify_table_styling(
columns = everything(),
footnote = "Nbre d'observations non manquantes"
)
# Afficher le tableau final
tbl_summary_with_n
Characteristic1 | Effectif1 | Féminin N = 1,0751 |
Masculin N = 6,1011 |
---|---|---|---|
Ăge du chef de mĂ©nage | 7,176 | 47.97 (15.37) | 45.27 (14.50) |
Taille du ménage | 7,176 | 4.53 (2.68) | 6.77 (4.09) |
Statut matrimonial du chef de ménage | 7,176 | ||
Célibataire | 89 (8.3%) | 260 (4.3%) | |
Divorcé(e) | 23 (2.1%) | 27 (0.4%) | |
Marié(e) monogame | 229 (21.3%) | 4,123 (67.6%) | |
Marié(e) polygame | 171 (15.9%) | 1,401 (23.0%) | |
Séparé(e) | 44 (4.1%) | 42 (0.7%) | |
Union libre | 9 (0.8%) | 190 (3.1%) | |
Veuf(ve) | 510 (47.4%) | 58 (1.0%) | |
Religion | 7,176 | ||
Animiste | 55 (5.1%) | 353 (5.8%) | |
Autre Réligion | 2 (0.2%) | 2 (0.0%) | |
Chrétien | 450 (41.9%) | 1,762 (28.9%) | |
Musulman | 563 (52.4%) | 3,965 (65.0%) | |
Sans Réligion | 5 (0.5%) | 19 (0.3%) | |
Plus haut diplÎme du chef de ménage | 7,176 | ||
Aucun | 862 (80.2%) | 4,689 (76.9%) | |
BAC | 36 (3.3%) | 193 (3.2%) | |
BEPC | 55 (5.1%) | 339 (5.6%) | |
BT | 0 (0.0%) | 5 (0.1%) | |
CAP | 5 (0.5%) | 15 (0.2%) | |
CEPE | 95 (8.8%) | 631 (10.3%) | |
DEUG, DUT, BTS | 5 (0.5%) | 53 (0.9%) | |
Doctorat/Phd | 2 (0.2%) | 2 (0.0%) | |
Licence | 9 (0.8%) | 101 (1.7%) | |
Maitrise | 5 (0.5%) | 38 (0.6%) | |
Master/DEA/DESS | 1 (0.1%) | 35 (0.6%) | |
Des handicapés dans le ménage ? | 7,176 | ||
Non | 977 (90.9%) | 5,786 (94.8%) | |
Oui | 98 (9.1%) | 315 (5.2%) | |
1 Nbre dâobservations non manquantes |
Dans cet exemple, nous avons utilisé uniquement les fonctions add_n() et add_overall() pour enrichir notre tableau de synthÚse.
Cependant, il existe dâautres fonctions comme add_p() pour ajouter des p-values pour comparer les groupes, add_difference() pour calculer la diffĂ©rence entre deux groupes avec lâintervalle de confiance et la p-value associĂ©e, ou encore add_stat_label() pour ajouter des Ă©tiquettes aux statistiques affichĂ©es. Nous nâavons pas utilisĂ© ces fonctions ici, car elles nĂ©cessitent la mise en Ćuvre de tests statistiques, ce que nous nâavons pas encore couvert dans le cadre de notre formation.
3. Fonctions de personnalisation du tableau
Ces fonctions de formatage de table proposées par gtsummary
permettent de modifier lâaspect du tableau aprĂšs sa crĂ©ation.
- modify_header() : Met Ă jour les en-tĂȘtes de colonnes.
# Modifier les en-tĂȘtes des colonnes
<- tbl_summary_example %>%
tbl_summary_modified modify_header(label~ "Nom de variables",stat_1 ~ "**Femmes**",
# Personnaliser l'en-tĂȘte de la col des var,
#de la 1ere colonne des statistiques
~ "**Hommes**" # pour la 2e
stat_2
)
# Afficher le tableau modifié
tbl_summary_modified
Nom de variables | Femmes1 | Hommes1 |
---|---|---|
Ăge du chef de mĂ©nage | 47.97 (15.37) | 45.27 (14.50) |
Taille du ménage | 4.53 (2.68) | 6.77 (4.09) |
Statut matrimonial du chef de ménage | ||
Célibataire | 89 (8.3%) | 260 (4.3%) |
Divorcé(e) | 23 (2.1%) | 27 (0.4%) |
Marié(e) monogame | 229 (21.3%) | 4,123 (67.6%) |
Marié(e) polygame | 171 (15.9%) | 1,401 (23.0%) |
Séparé(e) | 44 (4.1%) | 42 (0.7%) |
Union libre | 9 (0.8%) | 190 (3.1%) |
Veuf(ve) | 510 (47.4%) | 58 (1.0%) |
Religion | ||
Animiste | 55 (5.1%) | 353 (5.8%) |
Autre Réligion | 2 (0.2%) | 2 (0.0%) |
Chrétien | 450 (41.9%) | 1,762 (28.9%) |
Musulman | 563 (52.4%) | 3,965 (65.0%) |
Sans Réligion | 5 (0.5%) | 19 (0.3%) |
Plus haut diplÎme du chef de ménage | ||
Aucun | 862 (80.2%) | 4,689 (76.9%) |
BAC | 36 (3.3%) | 193 (3.2%) |
BEPC | 55 (5.1%) | 339 (5.6%) |
BT | 0 (0.0%) | 5 (0.1%) |
CAP | 5 (0.5%) | 15 (0.2%) |
CEPE | 95 (8.8%) | 631 (10.3%) |
DEUG, DUT, BTS | 5 (0.5%) | 53 (0.9%) |
Doctorat/Phd | 2 (0.2%) | 2 (0.0%) |
Licence | 9 (0.8%) | 101 (1.7%) |
Maitrise | 5 (0.5%) | 38 (0.6%) |
Master/DEA/DESS | 1 (0.1%) | 35 (0.6%) |
Des handicapés dans le ménage ? | ||
Non | 977 (90.9%) | 5,786 (94.8%) |
Oui | 98 (9.1%) | 315 (5.2%) |
1 Mean (SD); n (%) |
Autres paramĂštres | Description |
---|---|
modify_footnote_header() | Met Ă jour la note de bas de colonne dans lâen-tĂȘte |
modify_footnote_body() | Met Ă jour la note de bas de colonne dans le corps du tableau |
modify_spanning_header() | Met Ă jour les en-tĂȘtes englobants (spanning headers) |
modify_caption() | Met à jour la légende du tableau (titre) |
bold_labels() | Met en gras les étiquettes des variables |
bold_levels() | Met en gras les niveaux des variables |
italicize_labels() | Met en italique les étiquettes des variables |
italicize_levels() | Met en italique les niveaux des variables |
bold_p() | Met en gras les p-values significatives |
# Créer le tableau de synthÚse personnalisé
<- dataset %>%
tbl_summary_personalized tbl_summary(
by = hmstat,
include = c(hage, hhsize) # Sélection des variables
%>%
) add_overall() %>% # Ajouter une colonne avec les statistiques globales
add_n() %>% # Ajouter une colonne avec N (ou N manquants)
modify_header(label ~ "**Variables d'interet**") %>% # Modifier l'en-tĂȘte des variables
modify_spanning_header(c("stat_1", "stat_2","stat_3", "stat_4" ,"stat_5", "stat_6", "stat_7") ~ "**Etat matrimonial**") %>% # En-tĂȘtes englobants
modify_caption("Tableau modifié. Personnalisation") %>% # Légende
bold_labels() %>% # Mettre en gras les étiquettes des variables
italicize_labels()
# Afficher le tableau modifié
tbl_summary_personalized
Variables dâinteret | N | Overall N = 7,1761 |
Etat matrimonial
|
||||||
---|---|---|---|---|---|---|---|---|---|
Célibataire N = 3491 |
Divorcé(e) N = 501 |
Marié(e) monogame N = 4,3521 |
Marié(e) polygame N = 1,5721 |
Séparé(e) N = 861 |
Union libre N = 1991 |
Veuf(ve) N = 5681 |
|||
hage | 7,176 | 43 (34, 56) | 28 (24, 34) | 46 (35, 55) | 41 (33, 52) | 50 (41, 61) | 46 (36, 52) | 36 (29, 44) | 58 (48, 67) |
hhsize | 7,176 | 6.0 (4.0, 8.0) | 2.0 (1.0, 3.0) | 3.0 (2.0, 4.0) | 5.0 (4.0, 7.0) | 9.0 (6.0, 12.0) | 3.5 (2.0, 5.0) | 5.0 (3.0, 6.0) | 4.0 (3.0, 6.0) |
1 Median (Q1, Q3) |
- Combinaison des tableaux avec tbl_merge() et tbl_stack()
Combinaison de tableaux avec tbl_merge()
La fonction tbl_merge() permet de fusionner plusieurs tableaux en un seul en ajoutant des colonnes provenant de différents tableaux.
Dans cet exemple, nous allons combiner 2 tableaux en un seul tableau avec tbl_merge().
<- dataset %>%
tbl_1 tbl_summary(by = milieu, include = c(hage, hhsize))
<- dataset %>%
tbl_2 tbl_summary(by = hgender, include = c(hage, hhsize))
# Fusionner les deux tableaux dans une liste
<- tbl_merge(
tbl_combined list(tbl_1, tbl_2),
tab_spanner = c("Tableau 1 - Par milieu de résidence", "Tableau 2 - Par sexe")
%>%
)modify_header(label~ "Nom de variables/Modalités")
# Afficher le tableau fusionné
tbl_combined
Nom de variables/Modalités |
Tableau 1 - Par milieu de résidence
|
Tableau 2 - Par sexe
|
||
---|---|---|---|---|
Rural N = 3,8381 |
Urbain N = 3,3381 |
Féminin N = 1,0751 |
Masculin N = 6,1011 |
|
hage | 44 (35, 57) | 43 (34, 54) | 47 (36, 59) | 43 (34, 55) |
hhsize | 6.0 (4.0, 8.0) | 5.0 (4.0, 7.0) | 4.0 (3.0, 6.0) | 6.0 (4.0, 8.0) |
1 Median (Q1, Q3) |
Combinaison de tableaux avec tbl_stack()
La fonction tbl_stack() permet dâempiler plusieurs tableaux gtsummary verticalement. Cela signifie que les lignes des diffĂ©rents tableaux sont combinĂ©es en un seul tableau. Attention : les entĂȘtes de colonnes doivent correspondre. Si ce nâest pas le cas, seules les entĂȘtes du premier tableau sont conservĂ©es dans le tableau final
Dans cet exemple, nous allons empiler deux tableaux créés avec tbl_summary().
# Créer deux tableaux de statistiques descriptives
<- dataset %>%
tbl_1 tbl_summary(by = milieu, include = c(hage, hhsize))
<- dataset %>%
tbl_2 tbl_summary(by = hgender, include = c(hage, hhsize))
# Empiler les deux tableaux verticalement
<- tbl_stack(
tbl_stacked tbls = list(tbl_1, tbl_2), # Passer les tableaux sous forme de liste
group_header = c("Tableau 1 - Par milieu", "Tableau 2 - Par sexe")
%>%
) modify_header(label ~ "Nom de variables") # Appliquer aprĂšs le stacking
## Column headers among stacked tables differ. Headers from the first table are used.
## i Use `quiet = TRUE` to suppress this message.
# Afficher le tableau empilé
tbl_stacked
Nom de variables | Rural N = 3,8381 |
Urbain N = 3,3381 |
---|---|---|
Tableau 1 - Par milieu | ||
hage | 44 (35, 57) | 43 (34, 54) |
hhsize | 6.0 (4.0, 8.0) | 5.0 (4.0, 7.0) |
Tableau 2 - Par sexe | ||
hage | 47 (36, 59) | 43 (34, 55) |
hhsize | 4.0 (3.0, 6.0) | 6.0 (4.0, 8.0) |
1 Median (Q1, Q3) |
4. Personnalisation de lâapparence avec les thĂšmes gtsummary
Le package gtsummary offre plusieurs thĂšmes intĂ©grĂ©s pour personnaliser lâapparence des tableaux gĂ©nĂ©rĂ©s, permettant ainsi dâadapter lâaffichage en fonction du contexte dâutilisation (publication acadĂ©mique, rapport professionnel, etc.). Ces thĂšmes influencent lâaspect gĂ©nĂ©ral du tableau, comme lâespacement, la mise en forme des en-tĂȘtes et des colonnes, ainsi que lâagencement des lignes et des bordures.
a. theme_gtsummary_journal()
Ce thÚme permet de suivre le style de publication de revues académiques, avec des options pour choisir parmi plusieurs journaux :
âjamaâ (Journal of the American Medical Association)
âlancetâ (The Lancet)
ânejmâ (The New England Journal of Medicine)
âqjeconâ (The Quarterly Journal of Economics)
Exemple dâutilisation :
set_gtsummary_theme(theme_gtsummary_journal("qjecon")) # Appliquer le thĂšme
## Setting theme "The Quarterly Journal of Economics"
## Setting theme "The Quarterly Journal of Economics"
|> tbl_summary(include = c(hage, hmstat))%>%
dataset modify_header(label ~ "Nom de variables")
Nom de variables | N = 7,1761 |
---|---|
hage | 43 (34, 56) |
hmstat | |
Célibataire | 349 (4.9%) |
Divorcé(e) | 50 (0.7%) |
Marié(e) monogame | 4,352 (60.6%) |
Marié(e) polygame | 1,572 (21.9%) |
Séparé(e) | 86 (1.2%) |
Union libre | 199 (2.8%) |
Veuf(ve) | 568 (7.9%) |
1 Median (Q1, Q3); n (%) |
b. theme_gtsummary_compact()
Ce thĂšme rend les tableaux plus compacts en rĂ©duisant la taille de la police et lâespacement des cellules, idĂ©al pour les rapports plus condensĂ©s.
Exemple dâutilisation :
set_gtsummary_theme(theme_gtsummary_compact()) # Appliquer le thĂšme 'compact'
## Setting theme "Compact"
## Setting theme "Compact"
|> tbl_summary(include = c(hage, hmstat))%>%
dataset modify_header(label ~ "Nom de variables")
Nom de variables | N = 7,1761 |
---|---|
hage | 43 (34, 56) |
hmstat | |
Célibataire | 349 (4.9%) |
Divorcé(e) | 50 (0.7%) |
Marié(e) monogame | 4,352 (60.6%) |
Marié(e) polygame | 1,572 (21.9%) |
Séparé(e) | 86 (1.2%) |
Union libre | 199 (2.8%) |
Veuf(ve) | 568 (7.9%) |
1 Median (Q1, Q3); n (%) |
b. Autres thĂšmes
ThĂšme | Description | Script dâexemple |
---|---|---|
theme_gtsummary_printer() | Permet de dĂ©finir le moteur de rendu des tableaux, en choisissant parmi plusieurs options comme gt, kable, flextable, etc. | theme_gtsummary_printer(print_engine = âflextableâ, set_theme = TRUE) |
theme_gtsummary_language() | Permet de dĂ©finir la langue des tableaux gĂ©nĂ©rĂ©s, avec des traductions disponibles pour plusieurs langues, y compris le français, lâanglais, lâespagnol, etc. | theme_gtsummary_language(language = âfrâ, set_theme = TRUE) |
theme_gtsummary_continuous2() | Modifie la prĂ©sentation des variables continues dans tbl_summary() pour afficher des statistiques comme la mĂ©diane et lâintervalle interquartile par dĂ©faut. | theme_gtsummary_continuous2(set_theme = TRUE) |
theme_gtsummary_mean_sd() | DĂ©finit les statistiques par dĂ©faut pour les variables continues sur la moyenne et lâĂ©cart-type. | theme_gtsummary_mean_sd(set_theme = TRUE) |
theme_gtsummary_eda() | Ce thĂšme est conçu pour lâexploration des donnĂ©es (EDA) et affiche des statistiques supplĂ©mentaires comme la mĂ©diane, lâIQ, la moyenne, lâĂ©cart-type et la plage. | theme_gtsummary_eda(set_theme = TRUE) |
5. Exportation des tableaux vers différents formats
a. Exportation au format Word (flextable)
# Exportation en format flextable (pour Word)
library(flextable)
<- tbl_summary_overall %>%
tbl_summary_flex modify_header(label ~ "Nom de variables") %>%
as_flex_table() %>%
autofit() # Ajuster automatiquement la largeur des colonnes
# Affichage du tableau flextable
tbl_summary_flex
# Pour sauvegarder en Word (décommenter pour utiliser)
library(officer)
save_as_docx(tbl_summary_flex, path = "./tableaux_exportes/tableau_exporté_chap1.docx")
#flextable::save_as_html(resultats_flex, path = "./tableaux_exportes/tableau_exporté_chap1.html") # HTML
message("Le fichier 'tableau_exporté_chap1.docx' a été sauvegardé avec succÚs !")
## Le fichier 'tableau_exporté_chap1.docx' a été sauvegardé avec succÚs !
b. Exportation au format HTML (gt)
# Exportation en format gt (pour HTML)
library(gt)
<- tbl_summary_overall %>%
tbl_summary_gt modify_header(label ~ "Nom de variables") %>%
as_gt() %>%
tab_header(
title = "Statistiques descriptives de l'EHCVM 2021",
subtitle = "Avec nos variables d'intéret"
%>%
) tab_options(
heading.background.color = "#4E79A7",
heading.title.font.size = 18,
heading.subtitle.font.size = 14,
column_labels.background.color = "#A0CBE8"
)
# Affichage du tableau gt
tbl_summary_gt
Statistiques descriptives de l'EHCVM 2021 | |||
Avec nos variables d'intéret | |||
Nom de variables | Féminin N = 1,0751 |
Masculin N = 6,1011 |
Colonne des totaux ajouté 71761 |
---|---|---|---|
Ăge du chef de mĂ©nage | 47.97 (15.37) | 45.27 (14.50) | 45.68 (14.67) |
Taille du ménage | 4.53 (2.68) | 6.77 (4.09) | 6.44 (3.99) |
Statut matrimonial du chef de ménage | |||
Célibataire | 89 (8.3%) | 260 (4.3%) | 349 (4.9%) |
Divorcé(e) | 23 (2.1%) | 27 (0.4%) | 50 (0.7%) |
Marié(e) monogame | 229 (21.3%) | 4,123 (67.6%) | 4,352 (60.6%) |
Marié(e) polygame | 171 (15.9%) | 1,401 (23.0%) | 1,572 (21.9%) |
Séparé(e) | 44 (4.1%) | 42 (0.7%) | 86 (1.2%) |
Union libre | 9 (0.8%) | 190 (3.1%) | 199 (2.8%) |
Veuf(ve) | 510 (47.4%) | 58 (1.0%) | 568 (7.9%) |
Religion | |||
Animiste | 55 (5.1%) | 353 (5.8%) | 408 (5.7%) |
Autre Réligion | 2 (0.2%) | 2 (0.0%) | 4 (0.1%) |
Chrétien | 450 (41.9%) | 1,762 (28.9%) | 2,212 (30.8%) |
Musulman | 563 (52.4%) | 3,965 (65.0%) | 4,528 (63.1%) |
Sans Réligion | 5 (0.5%) | 19 (0.3%) | 24 (0.3%) |
Plus haut diplÎme du chef de ménage | |||
Aucun | 862 (80.2%) | 4,689 (76.9%) | 5,551 (77.4%) |
BAC | 36 (3.3%) | 193 (3.2%) | 229 (3.2%) |
BEPC | 55 (5.1%) | 339 (5.6%) | 394 (5.5%) |
BT | 0 (0.0%) | 5 (0.1%) | 5 (0.1%) |
CAP | 5 (0.5%) | 15 (0.2%) | 20 (0.3%) |
CEPE | 95 (8.8%) | 631 (10.3%) | 726 (10.1%) |
DEUG, DUT, BTS | 5 (0.5%) | 53 (0.9%) | 58 (0.8%) |
Doctorat/Phd | 2 (0.2%) | 2 (0.0%) | 4 (0.1%) |
Licence | 9 (0.8%) | 101 (1.7%) | 110 (1.5%) |
Maitrise | 5 (0.5%) | 38 (0.6%) | 43 (0.6%) |
Master/DEA/DESS | 1 (0.1%) | 35 (0.6%) | 36 (0.5%) |
Des handicapés dans le ménage ? | |||
Non | 977 (90.9%) | 5,786 (94.8%) | 6,763 (94.2%) |
Oui | 98 (9.1%) | 315 (5.2%) | 413 (5.8%) |
1 Mean (SD); n (%) |
# Pour sauvegarder en HTML (décommenter pour utiliser)
::gtsave(tbl_summary_gt, filename = "./tableaux_exportes/tableau_exporté_chap1.html")
gtmessage("Le fichier 'tableau_exporté_chap1.html' a été sauvegardé avec succÚs !")
## Le fichier 'tableau_exporté_chap1.html' a été sauvegardé avec succÚs !