IRaMuTeQ-lite / help /helpafc.md
stephane09's picture
Upload 41 files
6c8b83d verified
[//]: # (Rôle du fichier: helpafc.md documente une partie de l'application Rainette.)
[//]: # (Ce document sert de référence fonctionnelle/technique pour l'équipe.)
[//]: # (Il décrit le comportement attendu afin de sécuriser maintenance et diagnostics.)
## Aide AFC : calcul, affichage des termes, rôle de `top_termes`, calcul du `residu de Pearson`
### 1) Comment l’AFC est calculée dans le script
L’AFC classes × termes est calculée en 3 étapes :
1. Construction de la table de contingence **Classes × Termes** depuis le DFM.
2. Exécution de l’AFC avec `FactoMineR::CA(tab, graph = FALSE)`.
3. Récupération des coordonnées des classes (`rowcoord`) et des termes (`colcoord`) pour le tracé.
### 2) Qu’est-ce que `top_termes` ?
`top_termes` est **une limite d’affichage graphique** des mots sur le plan AFC. Par défaut : `top_termes = 120`
### 3) Sur quoi `top_termes` filtre ?
Le filtrage est fait dans la fonction de tracé des termes :
1. on part de `termes_stats`,
2. on enlève les termes vides,
3. on trie par `frequency` décroissante,
4. on garde les `top_termes` premiers.
Pourquoi top_termes est en fréquence et pas en p-value ?
Parce que top_termes est une contrainte de lisibilité graphique.
Le rôle de top_termes est de limiter le nombre de labels affichés dans `tracer_afc_classes_termes`, sinon le plot devient illisible (chevauchements).
Le code trie les termes par `frequency` qui détermine ensuite le `top_termes`.
En amont, dans le pipeline serveur, on construit termes_signif avec `p <= input$max_p`, puis on passe ces termes à `executer_afc_classes`, `termes_cibles` = termes_significatifs). **Donc la p-value réduit le périmètre des termes de l'AFC**.
### 4) Le CSV contient-il seulement `top_termes` ?
Le CSV `stats_termes.csv` exporte la table `rv$afc_obj$termes_stats` (jeu complet de stats AFC disponible), sans appliquer la réduction `top_termes`.
### 5) Note sur l'afc chi2/résidu de Pearson
- Les **positions AFC** viennent de `FactoMineR::CA`.
- Les **résidus/chi2** sont des statistiques d’association utilisés pour l’interprétation.
### 6) Comment le résidu de Pearson est calculé
Pour chaque mot et chaque classe :
- On regarde combien de fois le mot apparaît réellement dans cette classe.
- On calcule ensuite combien on aurait “normalement” attendu pour ce mot dans cette classe, si la répartition était neutre.
- On compare les deux : réel vs attendu, et transforme cet écart en une valeur (le résidu).
Le résidu ne sert pas à recalculer l’AFC.
- Le code extrait, pour chaque mot, la classe où la surreprésentation est la plus forte et sa valeur (`resid_max`).
- `Classe_max` = la classe où le mot apparaît le plus en quantité brute (le plus d’occurrences observées).
- `resid_max` = la valeur qui mesure à quel point ce mot est plus (ou moins) présent que prévu dans la classe (sur/sous-représentation)
### 7) Résidu positif / résidu négatif
- Résidu positif => le mot est plus présent que prévu dans cette classe (**surreprésenté**).
- Résidu négatif => le mot est moins présent que prévu dans cette classe (**sous-représenté**).
- Résidu proche de 0 => présence “normale”, pas d’écart fort.