knitr::opts_chunk$set(
echo = TRUE,
message = FALSE,
warning = FALSE,
fig.width = 8,
fig.height = 4,
dpi = 150
)
library(dplyr)
library(forcats)
library(tidyr)
library(readr)
library(scales)
library(knitr)
library(plotly)
# Charte graphique Okabe-Ito pour une question d'accessibilité aux daltoniens
pal_okabe <- c(
"Bleu" = "#0072B2",
"Orange" = "#E69F00",
"Vert" = "#009E73",
"Violet" = "#CC79A7",
"Gris" = "#999999"
)
# Mappings de couleurs
cols_freq_internet <- c(
"Plusieurs fois par jour" = unname(pal_okabe["Violet"]),
"1 fois par jour (ou presque)" = unname(pal_okabe["Orange"]),
"Moins d’1 fois / jour" = unname(pal_okabe["Gris"])
)
cols_expo_bin <- c(
"Non exposé" = unname(pal_okabe["Gris"]),
"Exposé" = unname(pal_okabe["Violet"])
)
cols_expo_force <- c(
"Aucune exposition" = unname(pal_okabe["Gris"]),
"Faible (1–3)" = unname(pal_okabe["Orange"]),
"Exposé (4–6)" = unname(pal_okabe["Bleu"]),
"Forte (7–10)" = unname(pal_okabe["Vert"]),
"Très forte (11–14)" = unname(pal_okabe["Violet"])
)
cols_diff_confiance <- c(
"+ journalistes" = unname(pal_okabe["Bleu"]),
"Équivalent" = unname(pal_okabe["Orange"]),
"+ créateurs" = unname(pal_okabe["Violet"])
)
cols_adhesion_force <- c(
"Faible (0–2)" = unname(pal_okabe["Gris"]),
"Moyen (3–5)" = unname(pal_okabe["Orange"]),
"Élevé (6–8)" = unname(pal_okabe["Violet"])
)
Cette analyse s’appuie sur la base anonymisée fournie pour le sujet (les-francais-et-l-information-arcom-2024-base-anonymisee.txt), issue de l’enquête ARCOM « Les Français et l’information ».
| Élément | Valeur |
|---|---|
| Fichier analysé | les-francais-et-l-information-arcom-2024-base-anonymisee.txt (base anonymisée) |
| Nombre de répondants (base) | 3346 |
| Nombre de variables (base) | 1076 |
| Poids d’enquête | POIDS03 (poids de redressement) |
| Remarque | Les non-réponses (NA) seront exclues au moment des analyses sur INF3 |
La variable POIDS03 est un poids de
redressement : elle sert à rendre les statistiques plus
représentatives de la population (corrige les déséquilibres de
l’échantillon sur des critères comme l’âge, le sexe, etc.).
Intuition : un répondant avec un poids 2 “compte” environ deux fois plus
qu’un répondant avec un poids 1 dans les pourcentages.
Conséquence : - Pour décrire (graphiques et %), on privilégiera des pourcentages pondérés (avec POIDS03). - Les effectifs bruts (non pondérés) restent utiles pour vérifier qu’il y a assez de répondants dans chaque catégorie.
Les variables de confiance (INF3) peuvent contenir des
non-réponses (NA).
Dans les analyses « confiance journalistes vs créateurs », les
pourcentages seront calculés uniquement sur les répondants à ces
questions : une non-réponse n’est pas une “absence de
confiance”, et ne doit pas être traitée comme 0.
| Variable | Manquants (n) | Manquants (%) | Manquants pondérés (%) |
|---|---|---|---|
| Confiance envers les journalistes | 397 | 11.9 | 14.7 |
| Confiance envers les créateurs | 397 | 11.9 | 14.7 |
La fracture de confiance entre journalistes et créateurs de contenus est-elle principalement générationnelle, ou s’explique-t-elle par l’exposition numérique ?
Mettre en évidence (ou non) une fracture de confiance entre journalistes et créateurs de contenus, puis tester si cette fracture semble surtout liée à l’âge ou si elle est en partie liée à l’exposition au numérique et aux plateformes.
L’exposition aux plateformes est utilisée comme un indicateur de substitution ** (proxy) ** : elle renseigne l’environnement numérique des répondants, sans mesurer directement l’exposition aux influenceurs. De plus, les plateformes étant de plus en plus hybrides ** (formats courts, convergence réseaux sociaux/vidéo) **, cet indicateur capte surtout une exposition globale plutôt qu’un type précis de contenu. Enfin, la mesure est déclarative, donc susceptible d’erreurs de mémoire ou de biais de désirabilité sociale, et l’enquête étant transversale, les résultats décrivent des associations entre variables sans permettre de conclure à une relation causale.
#1 Vérifier la présence des variables du plan
rsinfo_slots <- paste0("RSINFO_1_LR_R_", 1:14)
complot_items <- paste0("COMPLOT2_R_", 1:8)
vars_expected <- c(
"RS2C_RECODE_AG_R", "FREQ_INTERNET_R",
"INF3_R_1", "INF3_R_6",
"POIDS03",
rsinfo_slots,
complot_items
)
vars_missing <- setdiff(vars_expected, names(arcom))
if (length(vars_missing) == 0) {
cat("OK — Toutes les variables attendues pour le plan sont présentes.\n")
} else {
cat("ATTENTION — Variables attendues manquantes dans la base :\n")
print(vars_missing)
}
## OK — Toutes les variables attendues pour le plan sont présentes.
#2 Recodages lisibles (labels) pour affichage
arcom <- arcom %>%
dplyr::mutate(
age_lbl = dplyr::case_when(
RS2C_RECODE_AG_R == 1 ~ "15–17 ans",
RS2C_RECODE_AG_R == 2 ~ "18–24 ans",
RS2C_RECODE_AG_R == 3 ~ "25–34 ans",
RS2C_RECODE_AG_R == 4 ~ "35–44 ans",
RS2C_RECODE_AG_R == 5 ~ "45–59 ans",
RS2C_RECODE_AG_R == 6 ~ "60–69 ans",
RS2C_RECODE_AG_R == 7 ~ "70 ans et +",
TRUE ~ NA_character_
),
age_lbl = factor(
age_lbl,
levels = c("15–17 ans","18–24 ans","25–34 ans","35–44 ans","45–59 ans","60–69 ans","70 ans et +")
),
# FREQ_INTERNET_R : labels à vérifier dans le datamap si besoin
freq_internet_lbl = dplyr::case_when(
FREQ_INTERNET_R == 1 ~ "Plusieurs fois par jour",
FREQ_INTERNET_R == 2 ~ "1 fois par jour (ou presque)",
FREQ_INTERNET_R == 3 ~ "Moins d’1 fois / jour",
TRUE ~ NA_character_
),
freq_internet_lbl = factor(
freq_internet_lbl,
levels = c("Plusieurs fois par jour",
"1 fois par jour (ou presque)",
"Moins d’1 fois / jour")
)
)
#3 Préparation RSINFO : score d'exposition = nb de slots renseignés (non-NA)
rsinfo_slots_present <- intersect(rsinfo_slots, names(arcom))
if (length(rsinfo_slots_present) == 0) {
cat("\nATTENTION — aucune colonne RSINFO_1_LR_R_* trouvée : impossible de préparer l'exposition plateformes.\n")
} else {
slots_df <- arcom %>% dplyr::select(dplyr::all_of(rsinfo_slots_present))
slots_mat <- as.matrix(slots_df)
# Fréquence brute des codes (hors NA)
all_codes <- slots_mat[!is.na(slots_mat)]
code_counts <- sort(table(all_codes), decreasing = TRUE)
# Co-occurrence : un candidat "Aucun" apparaît quasi toujours seul (sans autre code dans la même ligne)
row_codes <- lapply(seq_len(nrow(slots_mat)), function(i) {
unique(slots_mat[i, !is.na(slots_mat[i, ])])
})
codes_unique <- sort(unique(unlist(row_codes)))
cooc_rate <- sapply(codes_unique, function(cd) {
idx <- vapply(row_codes, function(v) cd %in% v, logical(1))
if (!any(idx)) return(NA_real_)
mean(vapply(row_codes[idx], function(v) length(v) > 1, logical(1)))
})
stats_codes <- dplyr::tibble(
code = as.character(codes_unique),
n = as.integer(code_counts[as.character(codes_unique)] %>% replace(is.na(.), 0)),
cooc_rate = as.numeric(cooc_rate)
) %>%
dplyr::arrange(cooc_rate, dplyr::desc(n))
# Heuristique : "Aucun" = fréquent ET cooc_rate très faible
cand <- stats_codes %>%
dplyr::filter(!is.na(cooc_rate), n >= 50, cooc_rate <= 0.05) %>%
dplyr::slice_max(order_by = n, n = 1)
aucun_code <- if (nrow(cand) == 1) cand$code else NA_character_
cat("\nDétection automatique du code 'Aucun' (candidat) : ", ifelse(is.na(aucun_code), "NON DÉTECTÉ", aucun_code), "\n")
# Score = nombre de slots non-NA
expo_slots_filled <- rowSums(!is.na(slots_mat))
# Si 'Aucun' détecté : on ne le compte pas comme plateforme
if (!is.na(aucun_code)) {
has_aucun <- apply(slots_mat, 1, function(r) any(as.character(r) == aucun_code, na.rm = TRUE))
expo_score <- pmax(expo_slots_filled - ifelse(has_aucun, 1, 0), 0)
} else {
expo_score <- expo_slots_filled
}
arcom <- arcom %>%
dplyr::mutate(
expo_score = expo_score,
expo_bin = dplyr::if_else(expo_score >= 1, "Exposé", "Non exposé"),
expo_bin = factor(expo_bin, levels = c("Non exposé", "Exposé"))
)
#4 Présentation lisible de l’exposition plateformes
#Binaire : Non exposé vs Exposé
expo_bin_tbl <- arcom %>%
dplyr::filter(!is.na(expo_bin)) %>%
add_weight(weight_col = "POIDS03", out = "w", na_value = 0) %>%
dplyr::group_by(expo_bin) %>%
dplyr::summarise(
n = dplyr::n(),
w_n = sum(w, na.rm = TRUE),
.groups = "drop"
) %>%
dplyr::mutate(
pct = w_n / sum(w_n),
`% pondéré` = scales::percent(pct, accuracy = 0.1)
) %>%
dplyr::rename(`Exposition (binaire)` = expo_bin) %>%
dplyr::select(`Exposition (binaire)`, n, `% pondéré`)
knitr::kable(
expo_bin_tbl,
caption = "Exposition aux plateformes — synthèse (Non exposé vs Exposé)"
)
#Score : résumé simple (pas une distribution brute)
expo_score_resume <- arcom %>%
dplyr::summarise(
`Score min` = min(expo_score, na.rm = TRUE),
`Score médian` = stats::median(expo_score, na.rm = TRUE),
`Score max` = max(expo_score, na.rm = TRUE)
)
knitr::kable(
expo_score_resume,
caption = "Score d’exposition — résumé (min / médiane / max)"
)
}
##
## Détection automatique du code 'Aucun' (candidat) : 14
| Score min | Score médian | Score max |
|---|---|---|
| 0 | 4 | 13 |
Avant d’analyser la confiance envers les journalistes et les créateurs de contenus, on observe l’exposition numérique “générale” via la fréquence d’utilisation d’internet. L’objectif est d’identifier si les tranches d’âge ont des profils d’usage différents.
Le graphique met en évidence un effet générationnel net : les plus jeunes (notamment 15–17 ans) déclarent majoritairement une utilisation d’internet plusieurs fois par jour, tandis que la part des usages moins quotidiens augmente fortement avec l’âge, surtout à partir de 60 ans et plus encore chez les 70 ans et +. Cette relation est statistiquement significative, mais non linéaire : les écarts ne progressent pas de façon régulière tranche par tranche, avec des variations locales entre âges proches selon la modalité (“1 fois par jour” vs “plusieurs fois”).
Le graphique confirme un gradient générationnel : plus l’âge augmente, plus la distribution se déplace vers “aucune exposition” et “faible”, alors que les classes jeunes concentrent davantage les niveaux “exposé”, “forte” et “très forte”. Un point saillant concerne les 18–24 ans et les 25–34 ans : ce sont les tranches où la part de “très forte exposition” (11–14) est la plus visible, et où l’on observe aussi une forte présence des catégories “forte” et “exposé”. Autrement dit, ces deux groupes se distinguent par une intensité d’exposition élevée, cohérente avec un environnement numérique plus dense et plus régulier que chez les tranches plus âgées.
On compare la confiance déclarée envers les
journalistes et envers les créateurs de
contenus.
L’objectif est d’obtenir, par tranche d’âge, la part de répondants qui
font davantage confiance aux journalistes,
autant confiance, ou davantage confiance aux
créateurs.
| Source | Réponse | n | % pondéré |
|---|---|---|---|
| Journalistes | Tout à fait confiance | 246 | 9.7% |
| Journalistes | Plutôt confiance | 1679 | 55.3% |
| Journalistes | Plutôt pas confiance | 789 | 26.8% |
| Journalistes | Pas du tout confiance | 235 | 8.3% |
| Créateurs | Tout à fait confiance | 91 | 3.7% |
| Créateurs | Plutôt confiance | 472 | 18.3% |
| Créateurs | Plutôt pas confiance | 1124 | 37.6% |
| Créateurs | Pas du tout confiance | 1262 | 40.4% |
| Tranche d’âge | Plus confiance aux journalistes | Confiance équivalente | Plus confiance aux créateurs |
|---|---|---|---|
| 15–17 ans | 59.3 | 30.7 | 9.9 |
| 18–24 ans | 40.3 | 42.7 | 17.0 |
| 25–34 ans | 50.5 | 36.2 | 13.4 |
| 35–44 ans | 55.7 | 31.1 | 13.2 |
| 45–59 ans | 69.8 | 25.0 | 5.2 |
| 60–69 ans | 73.1 | 21.4 | 5.6 |
| 70 ans et + | 72.9 | 21.7 | 5.4 |
##
## Test du Chi-2 (non pondéré) : âge × différentiel de confiance
## Chi-2 = 222.56 | ddl = 12 | p-value = <2e-16
## V de Cramér = 0.194
La distribution globale montre d’abord un niveau de confiance nettement plus élevé envers les journalistes : la modalité dominante est « plutôt confiance » (55,3 % pondéré), alors que pour les créateurs, les réponses se concentrent surtout sur la défiance (37,6 % « plutôt pas confiance » et 40,4 % « pas du tout confiance »). Quand on regarde le différentiel “journalistes vs créateurs” par âge, la plupart des tranches déclarent davantage confiance aux journalistes, et ce phénomène devient très marqué après 45 ans (≈70 % “plus confiance aux journalistes”). À l’inverse, les 18–24 ans se distinguent par une part élevée de confiance équivalente (42,7 %) et la part la plus forte de “plus confiance aux créateurs” (17,0 %), signe d’un rapport plus équilibré aux deux sources chez les jeunes adultes. Le test du χ² (âge × différentiel) est hautement significatif (χ² = 222,56 ; ddl = 12 ; p < 2e-16) : la répartition des profils de confiance dépend bien de l’âge ; on parle donc d’une association statistique robuste (sans conclure à une causalité).
Ici, on observe le différentiel de confiance à exposition
comparable aux plateformes (deux groupes : Non exposé
vs Exposé).
L’objectif est de voir si l’effet “âge” persiste dans les deux
groupes.
Même à exposition comparable aux plateformes, le différentiel de confiance reste majoritairement en faveur des journalistes : dans les deux groupes (“non exposé” et “exposé”), les tranches d’âge les plus élevées se caractérisent par une part très dominante de « + confiance aux journalistes », ce qui suggère que l’effet âge ne se réduit pas uniquement à un effet “technologique”. En revanche, chez les plus jeunes (notamment 15–24 ans), la structure est plus équilibrée : la confiance équivalente prend davantage de place et, dans le groupe exposé, on observe une part non négligeable de « + confiance aux créateurs ». Autrement dit, à niveau d’exposition similaire, la fracture générationnelle persiste, mais elle se traduit surtout par un profil plus nuancé chez les jeunes, comparé à une préférence plus nette pour les journalistes chez les seniors.
On construit un indicateur de force d’adhésion
complotiste à partir de 8 items (COMPLOT2).
L’indicateur correspond au nombre d’items “adhésion”
(score de 0 à 8), puis il est regroupé en 3 niveaux : faible
(0–2), moyen (3–5), élevé
(6–8).
##
## Répondants avec 8/8 items complot répondus (et âge renseigné) : 3346 / 3346
Le graphique suggère une variation de l’adhésion complotiste selon l’âge : la répartition entre niveaux faible / moyen / élevé n’est pas identique d’une tranche d’âge à l’autre, ce qui indique un effet générationnel (au sens descriptif) sur cet indicateur. On observe globalement que la majorité des répondants se situe entre faible et moyen, tandis que le niveau élevé reste minoritaire dans toutes les tranches, avec des écarts de proportion selon l’âge.
Limite importante de lecture : cette association ne signifie pas que l’âge “explique” à lui seul l’adhésion complotiste. L’âge peut être corrélé à d’autres facteurs susceptibles d’influencer l’indicateur (niveau d’éducation, catégories socio-professionnelles, rapport à l’information, environnement médiatique, etc.). Comme l’enquête est transversale, on décrit une relation entre variables, sans pouvoir isoler un effet causal ni contrôler tous les facteurs de confusion avec ce seul graphique.
On observe ici si la force d’adhésion complotiste (faible / moyen / élevé) s’accompagne d’un profil de confiance différent entre journalistes et créateurs, et si ce profil varie selon la tranche d’âge.
Le graphique suggère un double effet : l’âge reste structurant, mais il est modulé par la force d’adhésion complotiste. Quand l’adhésion est faible (0–2), la confiance penche largement vers les journalistes dans presque toutes les tranches d’âge, surtout chez les plus âgés. À mesure que l’adhésion passe à moyenne (3–5) puis élevée (6–8), on observe chez les plus jeunes (en particulier 18–44 ans) un déplacement vers une confiance plus “équivalente” et, pour certains groupes, une part plus importante de “+ confiance aux créateurs”. À l’inverse, même en adhésion élevée, les 60 ans et + restent majoritairement du côté journalistes, ce qui montre que l’effet générationnel ne disparaît pas. Lecture à garder en tête : les sous-groupes “adhésion élevée” peuvent être moins nombreux, donc on évite de sur-interpréter des écarts fins.
Les résultats indiquent que la fracture de confiance est principalement générationnelle : même à exposition comparable aux plateformes, les tranches plus âgées accordent nettement plus de confiance aux journalistes, tandis que les plus jeunes présentent un profil plus équilibré (confiance équivalente plus fréquente) et une part légèrement plus tournée vers les créateurs. L’exposition numérique joue néanmoins un rôle : chez les jeunes plus exposés, la confiance relative envers les créateurs apparaît plus visible, ce qui suggère un effet d’environnement numérique qui s’ajoute à l’effet âge, sans l’effacer.
Limites : l’exposition aux plateformes reste un proxy (pas une mesure directe de l’exposition aux influenceurs) ; les données sont déclaratives (biais de mémoire/désirabilité sociale) ; l’enquête est transversale (associations, pas causalité) ; enfin, d’autres variables non isolées ici (éducation, CSP, politisation, rapport aux médias, etc.) peuvent confondre la relation observée.