| Sources acquises et configurées | |||||
| id | organisme | jeu | millesime | format | licence |
|---|---|---|---|---|---|
| personnels_1d | DEPP - Ministere de l'Education nationale | Indicateurs de personnels des etablissements du premier degre | 2024-2025 | csv | Licence Ouverte / Open Licence version 2.0 |
| personnels_2d | DEPP - Ministere de l'Education nationale | Indicateurs de personnels des etablissements du second degre | 2024 | csv | Licence Ouverte / Open Licence version 2.0 |
| mouvement_1d | DGRH et DEPP - Ministere de l'Education nationale | Mouvement interdepartemental des enseignants du premier degre public | 2019 | csv | Licence Ouverte / Open Licence version 2.0 |
| annuaire_education | Ministere de l'Education nationale | Annuaire de l'education | snapshot-2026-09-22 | csv | Licence Ouverte / Open Licence version 2.0 |
| ips_ecoles | DEPP - Ministere de l'Education nationale | Indices de position sociale dans les ecoles | 2022-2025 | csv | Licence Ouverte / Open Licence version 2.0 |
| ips_colleges | DEPP - Ministere de l'Education nationale | Indices de position sociale dans les colleges | 2022-2023 | csv | Licence Ouverte / Open Licence version 2.0 |
| ips_lycees | DEPP - Ministere de l'Education nationale | Indices de position sociale dans les lycees | 2022-2023 | csv | Licence Ouverte / Open Licence version 2.0 |
Rapport méthodologique
Observatoire des parcours et mobilités des personnels
Ce rapport décrit les données, traitements, contrôles, méthodes, résultats et limites du projet dans une forme destinée à la revue par un statisticien tiers. Il distingue systématiquement ce qui est observé, ce qui est calculable, ce qui est associatif et ce qui demeure non identifiable avec les données ouvertes.
1 Contexte
Le projet étudie les parcours et mobilités des personnels enseignants à partir de sources publiques officielles. Il constitue un démonstrateur reproductible de statistique publique : les données brutes sont conservées, la provenance est tracée, les transformations sont codées, les contrôles sont automatisés et les résultats sont produits par un pipeline targets.
La DEPP dispose de données administratives individuelles longitudinales, notamment le panel issu de la Base statistique des agents. Ces microdonnées ne sont pas librement téléchargeables. Les données ouvertes acquises ici décrivent principalement des agrégats d’ETP au niveau établissement–année.
2 Problématique
La question générale est : quels facteurs individuels, professionnels, territoriaux et organisationnels sont associés aux mobilités des personnels enseignants, et comment décrire leurs trajectoires dans le temps ?
Cette question appelle quatre registres qui ne sont pas interchangeables :
- description des effectifs, profils et disparités ;
- suivi longitudinal des états et transitions ;
- estimation d’associations conditionnelles ;
- prédiction hors échantillon d’une mobilité future.
Les données ouvertes permettent le premier registre et certaines associations au niveau établissement. Elles ne permettent pas d’observer les trajectoires ou mobilités individuelles.
3 Sources
Les URL de diffusion et de téléchargement sont centralisées dans config/data_sources.yml. Ce fichier constitue la source de vérité pour l’import : identifiant, producteur, millésime, licence, format, encodage, séparateur, volume minimal et colonnes requises.
| Manifeste d'import | |||||
| Les empreintes SHA-256 permettent de vérifier l'identité des fichiers bruts | |||||
| source_id | vintage | rows | columns | sha256 | status |
|---|---|---|---|---|---|
| personnels_1d | 2024-2025 | 94584 | 21 | dfbde9dd2b244655bac5402ee8d17133f7ef7fbb88ae81eb60427d4648f7fda1 | OK |
| personnels_2d | 2024 | 10697 | 40 | c7a288bccd06626ce5e23bc30e66068b5e3134863a079d56670698124229a504 | OK |
| mouvement_1d | 2019 | 101 | 8 | db5ff5ece4d50207b0d0a85f2f015eb74b743ec81bd34e2c131ddd3685a2f75d | OK |
| annuaire_education | snapshot-2026-09-22 | 68584 | 71 | 13c4bd8cfc4bf90086513189b7511436b8b0d55202b2d6700416fb9d6458862f | OK |
| ips_ecoles | 2022-2025 | 97080 | 23 | b92bbe48a97b880e9d4a9581e1ca6da8f2f3c7eefb31d3b6524115e64ac65947 | OK |
| ips_colleges | 2022-2023 | 6973 | 12 | f39d390d982974f2e3da2fcb18d0a677918e256e4716ebc6892d974e63e1c2d0 | OK |
| ips_lycees | 2022-2023 | 3598 | 18 | 03befae51f9b1beaca1f9f4b78f47c17142d2979863a73d2ac08f4502bf17841 | OK |
Les journaux horodatés sont conservés dans outputs/logs/. Les fichiers bruts et intermédiaires sont exclus de Git, contrairement au code, à la configuration et aux rapports.
4 Champ
Le champ analytique principal couvre les établissements scolaires présents dans les jeux DEPP d’indicateurs de personnels :
- premier degré, rentrées 2024 et 2025 ;
- second degré, rentrée 2024 ;
- mouvement interdépartemental du premier degré public, année 2019 ;
- annuaire de l’éducation, photographie du 22 septembre 2026 ;
- IPS des écoles, collèges et lycées selon les millésimes configurés.
Les champs diffèrent selon les sources. Les résultats ne sont agrégés ou rapprochés qu’après vérification des unités, périodes et clés.
5 Population
L’unité dominante est l’établissement × année, identifié par le code UAI. Les variables de personnel sont des équivalents temps plein agrégés. Le code UAI n’identifie pas un enseignant.
La population d’une analyse dépend du résultat présenté : établissements couverts par un jeu, UAI appariées à l’annuaire, ou départements présents dans le fichier du mouvement. Aucun résultat n’est généralisé silencieusement à l’ensemble des personnels lorsque l’unité observée est l’établissement.
6 Qualité
Le diagnostic est exécuté avant le nettoyage. Il porte sur les dimensions, clés, doublons, types, valeurs manquantes, modalités, valeurs aberrantes, cohérences temporelles et géographiques, nomenclatures, ruptures de série et cohérences inter-variables.
| Diagnostic qualité avant nettoyage | |||||||
| SOURCE | CATEGORIE | INDICATEUR | REGLE | RESULTAT | SEUIL | STATUT | ACTION |
|---|---|---|---|---|---|---|---|
| personnels_1d | dimensions | dimensions | Table non vide | 94584 lignes × 21 colonnes | > 0 ligne et > 0 colonne | OK | Aucune |
| personnels_1d | clés | clés | Valeurs manquantes dans la clé | 0 ligne(s) | 0 | OK | Aucune |
| personnels_1d | doublons | doublons | Unicité de la clé candidate | 0 doublon(s) | 0 | OK | Aucune |
| personnels_1d | types | types | Import conservatoire en chaînes | Toutes les colonnes sont character | 100 % character au stade raw | OK | Typer seulement à l'étape de nettoyage |
| personnels_1d | NA | NA | Taux global de valeurs NA | 4.59 % | Information; alerte si > 50 % | OK | Aucune |
| personnels_1d | modalités | modalités | Nomenclature de secteur | Privé sous contrat | Public | Public | Privé sous contrat | OK | Aucune |
| personnels_1d | types | types | Syntaxe numérique des mesures | 0 valeur(s) non convertible(s) | 0 | OK | Aucune |
| personnels_1d | NA | NA | Marqueurs de secret ou non-significativité (ss/NS) | 161904 valeur(s) | Information | INFORMATION | Conserver comme indisponibilité documentée; ne pas imputer |
| personnels_1d | valeurs aberrantes | valeurs aberrantes | Mesures déclarées non négatives | 0 valeur(s) négative(s) | 0 | OK | Aucune |
| personnels_1d | cohérence temporelle | cohérence temporelle | Périodes attendues présentes | 2024 | 2025 | 2024 | 2025 | OK | Aucune |
| personnels_1d | ruptures de série | ruptures de série | Variation des effectifs entre périodes consécutives | Maximum 0.91 % | Alerte si > 20 % | OK | Aucune |
| personnels_1d | cohérence géographique | cohérence géographique | Format de code_departement | 0 valeur(s) non conforme(s) | ^([0-9]{2,3}|2A|2B)$ | OK | Aucune |
| personnels_1d | cohérence géographique | cohérence géographique | Format de code_academie | 0 valeur(s) non conforme(s) | ^[0-9]{2}$ | OK | Aucune |
| personnels_1d | nomenclatures | nomenclatures | Format de identifiant_de_l_etablissement | 0 valeur(s) non conforme(s) | ^[0-9A-Z]{8}$ | OK | Aucune |
| personnels_1d | cohérence inter-variables | cohérence inter-variables | etp_de_femmes_enseignantes <= etp_d_enseignants_hommes_et_femmes | 0 violation(s) | 0 | OK | Aucune |
| personnels_1d | cohérence inter-variables | cohérence inter-variables | etp_d_enseignants_de_moins_de_35_ans + etp_d_enseignants_de_35_a_moins_de_50_ans + etp_d_enseignants_de_50_ans_ou_plus ~= etp_d_enseignants_hommes_et_femmes | 0 violation(s) | 0 | OK | Aucune |
| personnels_2d | dimensions | dimensions | Table non vide | 10697 lignes × 40 colonnes | > 0 ligne et > 0 colonne | OK | Aucune |
| personnels_2d | clés | clés | Valeurs manquantes dans la clé | 0 ligne(s) | 0 | OK | Aucune |
| personnels_2d | doublons | doublons | Unicité de la clé candidate | 0 doublon(s) | 0 | OK | Aucune |
| personnels_2d | types | types | Import conservatoire en chaînes | Toutes les colonnes sont character | 100 % character au stade raw | OK | Typer seulement à l'étape de nettoyage |
| personnels_2d | NA | NA | Taux global de valeurs NA | 0.96 % | Information; alerte si > 50 % | OK | Aucune |
| personnels_2d | modalités | modalités | Nomenclature de secteur | Privé | Public | Public | Privé | OK | Aucune |
| personnels_2d | types | types | Syntaxe numérique des mesures | 0 valeur(s) non convertible(s) | 0 | OK | Aucune |
| personnels_2d | NA | NA | Marqueurs de secret ou non-significativité (ss/NS) | 0 valeur(s) | Information | OK | Aucune |
| personnels_2d | valeurs aberrantes | valeurs aberrantes | Mesures déclarées non négatives | 0 valeur(s) négative(s) | 0 | OK | Aucune |
| personnels_2d | valeurs aberrantes | valeurs aberrantes | Pourcentages compris entre 0 et 100 | 0 valeur(s) hors plage | 0 | OK | Aucune |
| personnels_2d | cohérence temporelle | cohérence temporelle | Périodes attendues présentes | 2024 | 2024 | OK | Aucune |
| personnels_2d | ruptures de série | ruptures de série | Variation entre périodes | Une seule période disponible | Au moins 2 périodes | NON ÉVALUABLE | Ne pas conclure à l'absence de rupture |
| personnels_2d | cohérence géographique | cohérence géographique | Format de code_departement | 0 valeur(s) non conforme(s) | ^([0-9]{2,3}|2A|2B)$ | OK | Aucune |
| personnels_2d | cohérence géographique | cohérence géographique | Format de code_academie | 0 valeur(s) non conforme(s) | ^[0-9]{2}$ | OK | Aucune |
| personnels_2d | nomenclatures | nomenclatures | Format de identifiant_de_l_etablissement | 0 valeur(s) non conforme(s) | ^[0-9A-Z]{8}$ | OK | Aucune |
| personnels_2d | cohérence inter-variables | cohérence inter-variables | etp_de_femmes_enseignantes <= etp_enseignants_hommes_et_femmes | 0 violation(s) | 0 | OK | Aucune |
| mouvement_1d | dimensions | dimensions | Table non vide | 101 lignes × 8 colonnes | > 0 ligne et > 0 colonne | OK | Aucune |
| mouvement_1d | clés | clés | Valeurs manquantes dans la clé | 0 ligne(s) | 0 | OK | Aucune |
| mouvement_1d | doublons | doublons | Unicité de la clé candidate | 0 doublon(s) | 0 | OK | Aucune |
| mouvement_1d | types | types | Import conservatoire en chaînes | Toutes les colonnes sont character | 100 % character au stade raw | OK | Typer seulement à l'étape de nettoyage |
| mouvement_1d | NA | NA | Taux global de valeurs NA | 0.00 % | Information; alerte si > 50 % | OK | Aucune |
| mouvement_1d | types | types | Syntaxe numérique des mesures | 0 valeur(s) non convertible(s) | 0 | OK | Aucune |
| mouvement_1d | NA | NA | Marqueurs de secret ou non-significativité (ss/NS) | 0 valeur(s) | Information | OK | Aucune |
| mouvement_1d | valeurs aberrantes | valeurs aberrantes | Mesures déclarées non négatives | 0 valeur(s) négative(s) | 0 | OK | Aucune |
| mouvement_1d | cohérence temporelle | cohérence temporelle | Périodes attendues présentes | 2019 | 2019 | OK | Aucune |
| mouvement_1d | ruptures de série | ruptures de série | Variation entre périodes | Une seule période disponible | Au moins 2 périodes | NON ÉVALUABLE | Ne pas conclure à l'absence de rupture |
| mouvement_1d | cohérence géographique | cohérence géographique | Format de code_departement | 0 valeur(s) non conforme(s) | ^([0-9]{2,3}|2A|2B)$ | OK | Aucune |
| annuaire_education | dimensions | dimensions | Table non vide | 68584 lignes × 71 colonnes | > 0 ligne et > 0 colonne | OK | Aucune |
| annuaire_education | clés | clés | Valeurs manquantes dans la clé | 0 ligne(s) | 0 | OK | Aucune |
| annuaire_education | doublons | doublons | Unicité de la clé candidate | 82 doublon(s) | 0 | ALERTE | Expertiser la granularité avant dédoublonnage |
| annuaire_education | types | types | Import conservatoire en chaînes | Toutes les colonnes sont character | 100 % character au stade raw | OK | Typer seulement à l'étape de nettoyage |
| annuaire_education | NA | NA | Taux global de valeurs NA | 34.15 % | Information; alerte si > 50 % | OK | Aucune |
| annuaire_education | modalités | modalités | Nomenclature de statut_public_prive | Privé | Public | Public | Privé | OK | Aucune |
| annuaire_education | types | types | Syntaxe numérique des mesures | 0 valeur(s) non convertible(s) | 0 | OK | Aucune |
| annuaire_education | NA | NA | Marqueurs de secret ou non-significativité (ss/NS) | 0 valeur(s) | Information | OK | Aucune |
| annuaire_education | valeurs aberrantes | valeurs aberrantes | Mesures déclarées non négatives | 0 valeur(s) négative(s) | 0 | OK | Aucune |
| annuaire_education | cohérence géographique | cohérence géographique | Format de code_commune | 0 valeur(s) non conforme(s) | ^[0-9AB]{5}$ | OK | Aucune |
| annuaire_education | cohérence géographique | cohérence géographique | Format de code_departement | 0 valeur(s) non conforme(s) | ^([0-9]{2,3}|0?2A|0?2B)$ | OK | Aucune |
| annuaire_education | cohérence géographique | cohérence géographique | Format de code_academie | 0 valeur(s) non conforme(s) | ^[0-9]{2}$ | OK | Aucune |
| annuaire_education | nomenclatures | nomenclatures | Format de identifiant_de_l_etablissement | 0 valeur(s) non conforme(s) | ^[0-9A-Z]{8}$ | OK | Aucune |
| ips_ecoles | dimensions | dimensions | Table non vide | 97080 lignes × 23 colonnes | > 0 ligne et > 0 colonne | OK | Aucune |
| ips_ecoles | clés | clés | Valeurs manquantes dans la clé | 0 ligne(s) | 0 | OK | Aucune |
| ips_ecoles | doublons | doublons | Unicité de la clé candidate | 0 doublon(s) | 0 | OK | Aucune |
| ips_ecoles | types | types | Import conservatoire en chaînes | Toutes les colonnes sont character | 100 % character au stade raw | OK | Typer seulement à l'étape de nettoyage |
| ips_ecoles | NA | NA | Taux global de valeurs NA | 0.03 % | Information; alerte si > 50 % | OK | Aucune |
| ips_ecoles | modalités | modalités | Nomenclature de secteur | privé sous contrat | public | public | privé sous contrat | OK | Aucune |
| ips_ecoles | types | types | Syntaxe numérique des mesures | 0 valeur(s) non convertible(s) | 0 | OK | Aucune |
| ips_ecoles | NA | NA | Marqueurs de secret ou non-significativité (ss/NS) | 6926 valeur(s) | Information | INFORMATION | Conserver comme indisponibilité documentée; ne pas imputer |
| ips_ecoles | valeurs aberrantes | valeurs aberrantes | Mesures déclarées non négatives | 0 valeur(s) négative(s) | 0 | OK | Aucune |
| ips_ecoles | cohérence temporelle | cohérence temporelle | Périodes attendues présentes | 2022-2023 | 2023-2024 | 2024-2025 | 2022-2023 | 2023-2024 | 2024-2025 | OK | Aucune |
| ips_ecoles | ruptures de série | ruptures de série | Variation des effectifs entre périodes consécutives | Maximum 1.98 % | Alerte si > 20 % | OK | Aucune |
| ips_ecoles | cohérence géographique | cohérence géographique | Format de code_insee_de_la_commune | 0 valeur(s) non conforme(s) | ^[0-9AB]{5}$ | OK | Aucune |
| ips_ecoles | cohérence géographique | cohérence géographique | Format de code_du_departement | 0 valeur(s) non conforme(s) | ^([0-9]{2,3}|0?2A|0?2B)$ | OK | Aucune |
| ips_ecoles | nomenclatures | nomenclatures | Format de uai | 0 valeur(s) non conforme(s) | ^[0-9A-Z]{8}$ | OK | Aucune |
| ips_colleges | dimensions | dimensions | Table non vide | 6973 lignes × 12 colonnes | > 0 ligne et > 0 colonne | OK | Aucune |
| ips_colleges | clés | clés | Valeurs manquantes dans la clé | 0 ligne(s) | 0 | OK | Aucune |
| ips_colleges | doublons | doublons | Unicité de la clé candidate | 0 doublon(s) | 0 | OK | Aucune |
| ips_colleges | types | types | Import conservatoire en chaînes | Toutes les colonnes sont character | 100 % character au stade raw | OK | Typer seulement à l'étape de nettoyage |
| ips_colleges | NA | NA | Taux global de valeurs NA | 0.00 % | Information; alerte si > 50 % | OK | Aucune |
| ips_colleges | modalités | modalités | Nomenclature de secteur | privé sous contrat | public | public | privé sous contrat | OK | Aucune |
| ips_colleges | types | types | Syntaxe numérique des mesures | 0 valeur(s) non convertible(s) | 0 | OK | Aucune |
| ips_colleges | NA | NA | Marqueurs de secret ou non-significativité (ss/NS) | 0 valeur(s) | Information | OK | Aucune |
| ips_colleges | valeurs aberrantes | valeurs aberrantes | Mesures déclarées non négatives | 0 valeur(s) négative(s) | 0 | OK | Aucune |
| ips_colleges | cohérence temporelle | cohérence temporelle | Périodes attendues présentes | 2022-2023 | 2022-2023 | OK | Aucune |
| ips_colleges | ruptures de série | ruptures de série | Variation entre périodes | Une seule période disponible | Au moins 2 périodes | NON ÉVALUABLE | Ne pas conclure à l'absence de rupture |
| ips_colleges | cohérence géographique | cohérence géographique | Format de code_insee_de_la_commune | 0 valeur(s) non conforme(s) | ^[0-9AB]{5}$ | OK | Aucune |
| ips_colleges | cohérence géographique | cohérence géographique | Format de code_du_departement | 0 valeur(s) non conforme(s) | ^([0-9]{2,3}|0?2A|0?2B)$ | OK | Aucune |
| ips_colleges | nomenclatures | nomenclatures | Format de uai | 0 valeur(s) non conforme(s) | ^[0-9A-Z]{8}$ | OK | Aucune |
| ips_lycees | dimensions | dimensions | Table non vide | 3598 lignes × 18 colonnes | > 0 ligne et > 0 colonne | OK | Aucune |
| ips_lycees | clés | clés | Valeurs manquantes dans la clé | 0 ligne(s) | 0 | OK | Aucune |
| ips_lycees | doublons | doublons | Unicité de la clé candidate | 0 doublon(s) | 0 | OK | Aucune |
| ips_lycees | types | types | Import conservatoire en chaînes | Toutes les colonnes sont character | 100 % character au stade raw | OK | Typer seulement à l'étape de nettoyage |
| ips_lycees | NA | NA | Taux global de valeurs NA | 12.31 % | Information; alerte si > 50 % | OK | Aucune |
| ips_lycees | modalités | modalités | Nomenclature de secteur | privé sous contrat | public | public | privé sous contrat | OK | Aucune |
| ips_lycees | types | types | Syntaxe numérique des mesures | 0 valeur(s) non convertible(s) | 0 | OK | Aucune |
| ips_lycees | NA | NA | Marqueurs de secret ou non-significativité (ss/NS) | 0 valeur(s) | Information | OK | Aucune |
| ips_lycees | valeurs aberrantes | valeurs aberrantes | Mesures déclarées non négatives | 0 valeur(s) négative(s) | 0 | OK | Aucune |
| ips_lycees | cohérence temporelle | cohérence temporelle | Périodes attendues présentes | 2022-2023 | 2022-2023 | OK | Aucune |
| ips_lycees | ruptures de série | ruptures de série | Variation entre périodes | Une seule période disponible | Au moins 2 périodes | NON ÉVALUABLE | Ne pas conclure à l'absence de rupture |
| ips_lycees | cohérence géographique | cohérence géographique | Format de code_insee_de_la_commune | 0 valeur(s) non conforme(s) | ^[0-9AB]{5}$ | OK | Aucune |
| ips_lycees | cohérence géographique | cohérence géographique | Format de code_du_departement | 0 valeur(s) non conforme(s) | ^([0-9]{2,3}|0?2A|0?2B)$ | OK | Aucune |
| ips_lycees | nomenclatures | nomenclatures | Format de uai | 0 valeur(s) non conforme(s) | ^[0-9A-Z]{8}$ | OK | Aucune |
| ips_lycees | cohérence inter-variables | cohérence inter-variables | effectifs_voie_gt + effectifs_voie_pro = effectifs_ensemble_gt_pro | 0 violation(s) | 0 | OK | Aucune |
Une anomalie n’est jamais corrigée silencieusement. Les valeurs soumises au secret statistique restent manquantes; elles ne sont ni remplacées par zéro ni imputées comme des observations réelles.
7 Préparation
La préparation suit les étapes suivantes :
- téléchargement depuis l’URL officielle configurée ;
- conservation immuable du fichier raw ;
- contrôle du format, de l’encodage, du volume et des colonnes ;
- empreinte SHA-256, date, millésime et journal d’import ;
- normalisation des noms, types, dates et codes ;
- harmonisation des années, départements, académies et régions ;
- conservation des valeurs manquantes documentées ;
- enregistrement séparé des données intermédiaires, nettoyées et enrichies.
Les transformations sont implémentées dans R/cleaning.R, les variables dérivées dans R/features.R, et la stratégie de panel dans R/panel.R.
8 Variables
| Famille | Variables construites ou utilisées | Unité / limite |
|---|---|---|
| Effectif | ETP enseignants, nombre d’UAI | Agrégat établissement |
| Sexe | part d’ETP de femmes | Dénominateur observé propre à la variable |
| Âge | moins de 35 ans, 35–49 ans, 50 ans ou plus | Classes agrégées, pas d’âge individuel |
| Ancienneté | moins de 2 ans, 2–4 ans, 5–7 ans, 8 ans ou plus | Ancienneté dans l’établissement, pas dans la carrière |
| Territoire | département, académie, région | Codes issus de la source et harmonisés |
| Éducation prioritaire | REP ou REP+ | Snapshot annuaire 2026, pas statut historique garanti |
| Mouvement | trois ratios départementaux | Année 2019, sans effectifs bruts ni flux individuels |
| Présence | observé, apparition, disparition du fichier | Ne constitue pas une entrée ou sortie de personnel |
Chaque proportion agrégée est calculée comme somme des numérateurs divisée par somme des dénominateurs observés. La couverture en ETP est conservée séparément.
9 Méthodes
| Registre | Méthode | Objet réellement estimé | Statut |
|---|---|---|---|
| Descriptif | agrégations pondérées, évolutions, distributions | ETP et compositions établissement/territoire | Réalisé |
| Trajectoires | séquences de présence UAI | présence dans deux fichiers annuels | Alternative descriptive |
| Territorial | proportions, cartes sf, effets de composition |
disparités agrégées | Réalisé |
| Économétrie | glm(..., family = binomial) |
absence d’une UAI en 2025 | Associatif |
| Survie | Surv, Kaplan–Meier, Cox |
temps individuel avant mobilité | Non identifiable |
| Machine Learning | tidymodels et validation temporelle | mobilité individuelle à t+1 | Non entraîné |
| Explicabilité | permutation, PDP, SHAP | explication d’un modèle prédictif final | Non calculable sans modèle |
10 Descriptif
| Effectifs préparés | |||||
| ETP et établissements selon l'année et le degré | |||||
| annee | etablissements | etp_enseignants | degre | variation_etp | taux_variation_etp |
|---|---|---|---|---|---|
| 2024 | 47507 | 316886.5 | Premier degré | NA | NA |
| 2025 | 47077 | 314691.5 | Premier degré | -2195 | -0.7% |
| 2024 | 10697 | 441452.9 | Second degré | NA | NA |
Les profils d’âge et d’ancienneté sont présentés en proportions d’ETP. Les effectifs bruts ne sont pas assimilés à des taux et aucune différence descriptive n’est interprétée causalement.
11 Trajectoires
| Séquences alternatives de présence des établissements | |||||||
| sequence_presence | etablissements | part_des_uai | duree_observee_mediane | etp_initial_median | etp_final_median | variation_etp_mediane | part_education_prioritaire |
|---|---|---|---|---|---|---|---|
| OBSERVE → OBSERVE | 46993 | 0.98743460 | 2 | 5.2 | 5.2 | 0 | 0.1391082 |
| OBSERVE → ABSENT_DU_FICHIER | 514 | 0.01080036 | 1 | 3.0 | NA | NA | 0.1071429 |
| ABSENT_DU_FICHIER → OBSERVE | 84 | 0.00176504 | 1 | NA | 7.4 | NA | 0.3253012 |
| Faisabilité des trajectoires professionnelles | |||
| OBJET | DISPONIBILITE | DECISION | JUSTIFICATION |
|---|---|---|---|
| Séquences professionnelles | NON DISPONIBLE | NON CONSTRUIT | Aucun identifiant personnel public; deux années seulement au niveau UAI |
| Durée dans un état professionnel | NON DISPONIBLE | NON CONSTRUIT | Aucune date d'état individuel |
| Transitions professionnelles | NON DISPONIBLE | NON CONSTRUIT | Les variations d'ETP ne révèlent pas les mouvements individuels |
| Matrice de transition professionnelle | NON DISPONIBLE | NON CONSTRUIT | Une matrice agrégée ne serait pas une matrice de carrières |
| Trajectoires professionnelles fréquentes | NON DISPONIBLE | NON CONSTRUIT | Stable → Mobilité → Stable exige trois dates individuelles |
| Profils de parcours individuels | NON DISPONIBLE | NON CONSTRUIT | Le biais écologique interdit de transformer un profil d'établissement en profil de personne |
Avec seulement deux millésimes et aucun identifiant personnel, les séquences Stable → Mobilité → Stable ne sont pas observables. Une disparition d’UAI du fichier peut provenir d’un changement de champ, d’une fermeture, d’une modification d’identifiant ou d’un problème de couverture; elle n’est jamais qualifiée de sortie de personnel.
12 Territoires
Les niveaux réellement disponibles sont le département, l’académie et la région. Les cartes départementales utilisent les géométries officielles du fichier du mouvement 2019 et les indicateurs de personnel 2025.
| Effets descriptifs de composition territoriale | |||||||
| indicateur | moyenne_nationale_ponderee_etp | moyenne_simple_departements | ecart_composition | ecart_type_interdepartemental | q1 | q3 | departements_observes |
|---|---|---|---|---|---|---|---|
| Part des ETP ages de 50 ans ou plus | 0.3519 | 0.3781 | -0.0262 | 0.0536 | 0.3449 | 0.4061 | 102 |
| Part des ETP avec moins de 2 ans dans l'etablissement | 0.2698 | 0.2572 | 0.0127 | 0.0377 | 0.2322 | 0.2774 | 102 |
| Part des ETP avec 8 ans ou plus dans l'etablissement | 0.3874 | 0.4122 | -0.0248 | 0.0570 | 0.3856 | 0.4493 | 102 |
| Validation territoriale | |||||
| INDICATEUR | REGLE | RESULTAT | SEUIL | STATUT | ACTION |
|---|---|---|---|---|---|
| Cle departement | Une ligne par code | 0.0000000 | 0 | OK | Aucune |
| Cle academie | Une ligne par code | 0.0000000 | 0 | OK | Aucune |
| Cle region | Une ligne par code | 0.0000000 | 0 | OK | Aucune |
| Proportions bornees | Valeurs entre 0 et 1 | 0.0000000 | 0 | OK | Aucune |
| Geometries valides | Toutes les geometries valides | 0.0000000 | 0 | OK | Aucune |
| Couverture jointure cartographique | Au moins 95 % des departements statistiques | 0.9901961 | >= 0.95 | OK | Aucune |
| Figures produites | Tous les fichiers existent | 3.0000000 | = 3 | OK | Aucune |
L’écart de composition compare la moyenne nationale pondérée par les ETP à la moyenne simple des départements. Il ne mesure pas un effet causal du territoire.
13 Économétrie
La régression logistique porte sur les établissements observés en 2024. L’issue vaut 1 lorsque l’UAI est absente du fichier 2025. Elle ne mesure pas une mobilité individuelle. Les variables explicatives sont mesurées en 2024 : taille en ETP, composition par ancienneté, âge, sexe et secteur.
| Régression logistique | ||||||
| Coefficients, odds ratios et intervalles de confiance de Wald à 95 % | ||||||
| term | estimate | std.error | p.value | odds_ratio | or_ic95_basse | or_ic95_haute |
|---|---|---|---|---|---|---|
| (Intercept) | -2.88100 | 1.26200 | 2.243e-02 | 0.05606 | 0.004725 | 0.6651 |
| log_etp | -2.14800 | 0.34900 | 7.582e-10 | 0.11680 | 0.058920 | 0.2314 |
| anciennete_moins_2_10pp | 0.05130 | 0.04882 | 2.933e-01 | 1.05300 | 0.956600 | 1.1580 |
| age_50_plus_10pp | 0.01213 | 0.04412 | 7.834e-01 | 1.01200 | 0.928300 | 1.1040 |
| femmes_10pp | 0.05930 | 0.07577 | 4.338e-01 | 1.06100 | 0.914700 | 1.2310 |
| secteurPUBLIC | 1.50300 | 0.58620 | 1.035e-02 | 4.49500 | 1.425000 | 14.1800 |
| Diagnostics économétriques | ||
| DIAGNOSTIC | RESULTAT | INTERPRETATION |
|---|---|---|
| Evenements Y=1 | 1.230e+02 | Information effective pour l'issue rare |
| Taux d'evenement | 4.530e-03 | Part des UAI 2024 absentes en 2025 |
| AUC apparente | 7.061e-01 | Discrimination interne, sans validation externe |
| Score de Brier | 4.498e-03 | Erreur quadratique probabiliste |
| Deviance / ddl residuels | 5.546e-02 | Dispersion descriptive |
| Condition number | 1.392e+00 | Multicolinearite globale de la matrice |
| Link test: terme quadratique p | 9.642e-01 | Une faible p-valeur signale une specification possiblement incomplete |
| Interaction anciennete x secteur: test LR p | 3.077e-01 | Teste l'apport de l'interaction secteur x anciennete |
| Observations influentes (Cook > 4/n) | 1.230e+02 | Points a examiner; aucun retrait silencieux |
| Coefficients finis | 1.000e+00 | Controle de separation numerique |
| Convergence des trois modeles | 3.000e+00 | Trois convergences attendues |
« Toutes choses égales par ailleurs » signifie seulement que les variables incluses sont maintenues constantes dans la spécification. Cela ne contrôle ni les variables omises ni les mécanismes de sélection et ne fonde aucune causalité.
14 Survie
| Audit de faisabilité de l'analyse de survie | ||||
| CONTROLE | REQUIS | RESULTAT | STATUT | ACTION |
|---|---|---|---|---|
| Identifiant personnel stable | id_personnel | Absent | BLOQUANT | Obtenir les donnees longitudinales internes DEPP |
| Date d'origine individuelle | date_origine | Absent | BLOQUANT | Obtenir les donnees longitudinales internes DEPP |
| Date d'evenement ou censure | date_fin | Absent | BLOQUANT | Obtenir les donnees longitudinales internes DEPP |
| Evenement de mobilite individuel | evenement_mobilite | Absent | BLOQUANT | Obtenir les donnees longitudinales internes DEPP |
| Au moins trois dates possibles | >= 3 vagues | 2 vagues | BLOQUANT | Etendre la fenetre temporelle |
| Disparition distinguee d'une sortie | motif/statut de sortie | Non | BLOQUANT | Obtenir un statut de sortie fiable |
Le temps avant une mobilité exigerait un identifiant personnel, une origine temporelle individuelle, une date d’événement ou de censure, un événement de mobilité vérifié et une profondeur temporelle suffisante. Toutes ces conditions sont bloquantes dans l’open data. Les fonctions Surv(), survfit(), coxph() et cox.zph() sont codées et testées techniquement, mais aucun résultat empirique n’est produit.
15 Machine Learning
| Audit de faisabilité du Machine Learning | ||||
| CONTROLE | REQUIS | RESULTAT | STATUT | ACTION |
|---|---|---|---|---|
| Identifiant personnel longitudinal | id_personnel | Absent | BLOQUANT | Obtenir un identifiant pseudonymise stable |
| Cible mobilite a t+1 | mobilite_t_plus_1 | Absent | BLOQUANT | Construire la cible depuis les positions t et t+1 |
| Annees observees | >= 4 annees | 2 annees | BLOQUANT | Etendre la profondeur historique |
| Transitions pour train/validation/test | >= 3 annees d'origine | 1 transition | BLOQUANT | Reserver la derniere transition au test |
| Predicteurs individuels mesures a t | Variables individuelles datees | Absent | BLOQUANT | Obtenir les covariables internes a la date t |
| Sortie distinguee d'une disparition | Statut individuel fiable | Non | BLOQUANT | Obtenir les statuts administratifs fiables |
Le pipeline conditionnel prévoit une régression logistique pénalisée, une forêt aléatoire et un gradient boosting, avec recipe, folds temporels croissants, tuning par PR-AUC et test final réservé. Une seule transition 2024→2025 ne permet pas de séparer apprentissage, réglage et test. Aucun modèle n’est entraîné et aucune performance n’est fabriquée.
16 Validation
| Statut de l'évaluation prédictive | ||
| OBJET | STATUT | RAISON |
|---|---|---|
| Comparaison empirique | NON EVALUABLE - AUCUNE PREDICTION HORS ECHANTILLON | L'etape 13 n'a entraine aucun modele faute de cible individuelle et de profondeur temporelle |
Le module d’évaluation prévoit ROC-AUC, PR-AUC, précision, recall, F1, sensibilité, spécificité, matrice de confusion, score de Brier, ECE, stabilité entre périodes et généralisation. L’accuracy n’est jamais utilisée seule. Aucun modèle complexe n’est sélectionné automatiquement sur le maximum d’une métrique.
Les tests unitaires couvrent les imports, la qualité, le nettoyage, les variables, le panel, les descriptions, les trajectoires, les territoires, l’économétrie, la survie, le ML, l’évaluation, l’explicabilité et le dashboard.
17 Explicabilité
| Registre des sorties d'explicabilité | |||
| SORTIE | OUTIL | PRODUITE | RAISON |
|---|---|---|---|
| Importance globale | vip et SHAP moyen absolu | NON | Aucun modele predictif entraine a l'etape 13; aucune explication empirique possible |
| Permutation importance | vip et DALEX | NON | Aucun modele predictif entraine a l'etape 13; aucune explication empirique possible |
| Partial dependence | DALEX::model_profile | NON | Aucun modele predictif entraine a l'etape 13; aucune explication empirique possible |
| SHAP | DALEX::predict_parts(type='shap') | NON | Aucun modele predictif entraine a l'etape 13; aucune explication empirique possible |
| Comparaison econometrique | Table de concordance conceptuelle | NON | Aucun modele predictif entraine a l'etape 13; aucune explication empirique possible |
Le module prévoit l’importance globale et par permutation avec vip et DALEX, les profils de dépendance partielle et les contributions SHAP via DALEX. Aucun objet n’est calculé sans modèle prédictif final. La comparaison avec l’économétrie exige une population, une issue, une période et des transformations communes, conditions non satisfaites ici.
Importance prédictive ≠ association statistique ≠ causalité.
18 Limites
Les limites structurantes sont :
- absence d’identifiant personnel stable dans les données ouvertes ;
- deux années seulement dans le premier degré et une dans le second degré ;
- variables diffusées sous forme d’ETP agrégés ;
- masquage lié au secret statistique ;
- ancienneté limitée à l’établissement ;
- mouvement interdépartemental disponible uniquement sous forme de ratios départementaux pour 2019 ;
- statut d’éducation prioritaire issu d’un snapshot 2026 ;
- risque d’erreur écologique lors de toute interprétation des agrégats ;
- absence de stratégie d’identification causale ;
- impossibilité de valider un modèle individuel de survie ou de prédiction.
19 Reproductibilité
La racine du projet est déterminée par here; aucun chemin absolu n’est utilisé par le code analytique. Les dépendances sont verrouillées par renv.lock, les calculs orchestrés par _targets.R, les tests placés dans tests/testthat/ et les documents rendus par Quarto.
Depuis une copie du dépôt :
Puis, dans le terminal :
quarto render reports/rapport_methodologique.qmd
Rscript -e "shiny::runApp('dashboard')"Ordre d’audit recommandé :
- vérifier
config/data_sources.ymlet les licences ; - comparer les empreintes de
data/interim/import_summary.csv; - lire les journaux
outputs/logs/; - examiner
outputs/tables/diagnostic_qualite.csvavant les données nettoyées ; - consulter les fonctions
R/et leurs tests correspondants ; - vérifier les métadonnées du pipeline ;
- rendre les notebooks puis le présent rapport.
| Métadonnées du dernier pipeline targets | ||||
| name | seconds | bytes | error | warnings |
|---|---|---|---|---|
| environment_manifest | 0.00 | 185 | NA | NA |
| source_manifest | 0.25 | 1420 | NA | NA |
| feature_data | 8.82 | 2787 | NA | NA |
| panel_data | 40.22 | 1754 | NA | NA |
| descriptive_results | 16.78 | 6374 | NA | NA |
| trajectory_results | 4.11 | 392027 | NA | NA |
| territorial_results | 10.52 | 14445 | NA | NA |
| econometric_results | 4.33 | 3060 | NA | NA |
| survival_results | 0.81 | 1697 | NA | NA |
| modeling_results | 0.72 | 1852 | NA | NA |
| evaluation_results | 0.23 | 1446 | NA | NA |
| explainability_results | 0.19 | 1582 | NA | NA |
| .Random.seed | NA | NA | NA | NA |
| result | NA | NA | NA | NA |
| e | NA | NA | NA | NA |
| dashboard_validation | 0.07 | 556 | NA | NA |
| trajectory_analysis_registers | NA | NA | NA | NA |
| numeric_variables | NA | NA | NA | NA |
| ml_leakage_rules | NA | NA | NA | NA |
| model_stability | NA | NA | NA | NA |
| descriptive_theme | NA | NA | NA | NA |
| as_logical_depp | NA | NA | NA | NA |
| as_number_quality | NA | NA | NA | NA |
| convert_missing_markers | NA | NA | NA | NA |
| logical_variables_annuaire | NA | NA | NA | NA |
| normalise_academy_code | NA | NA | NA | NA |
| normalise_department_code | NA | NA | NA | NA |
| normalise_sector | NA | NA | NA | NA |
| trim_character_columns | NA | NA | NA | NA |
| append_education_priority | NA | NA | NA | NA |
| safe_ratio | NA | NA | NA | NA |
| sha256_file | NA | NA | NA | NA |
| validate_feature_table | NA | NA | NA | NA |
| survival_scientific_definition | NA | NA | NA | NA |
| descriptive_plot_labels | NA | NA | NA | NA |
| read_source_manifest | NA | NA | NA | NA |
| quality_specifications | NA | NA | NA | NA |
| evaluation_metric_definitions | NA | NA | NA | NA |
| read_department_geometries | NA | NA | NA | NA |
| explainability_output_register | NA | NA | NA | NA |
| ml_scientific_definition | NA | NA | NA | NA |
| build_establishment_presence_sequences | NA | NA | NA | NA |
| build_presence_transition_matrix | NA | NA | NA | NA |
| build_trajectory_profiles | NA | NA | NA | NA |
| professional_trajectory_feasibility | NA | NA | NA | NA |
| validate_trajectory_outputs | NA | NA | NA | NA |
| write_utf8_csv | NA | NA | NA | NA |
| audit_ml_feasibility | NA | NA | NA | NA |
| import_raw_csv | NA | NA | NA | NA |
| validate_descriptive_outputs | NA | NA | NA | NA |
| prepare_econometric_data | NA | NA | NA | NA |
| ml_choice_register | NA | NA | NA | NA |
| build_ml_recipe | NA | NA | NA | NA |
| build_ml_specifications | NA | NA | NA | NA |
| evaluation_data_contract | NA | NA | NA | NA |
| evaluation_decision_rules | NA | NA | NA | NA |
| model_characteristics | NA | NA | NA | NA |
| composition_long | NA | NA | NA | NA |
| source_paths | NA | NA | NA | NA |
| build_initial_dictionary | NA | NA | NA | NA |
| feature_dictionary | NA | NA | NA | NA |
| survival_interpretation_rules | NA | NA | NA | NA |
| territorial_map_labels | NA | NA | NA | NA |
| aggregate_priority_education | NA | NA | NA | NA |
| quarto_version | NA | NA | NA | NA |
| econometric_framework | NA | NA | NA | NA |
| temporal_resamples | NA | NA | NA | NA |
| build_composition_effects | NA | NA | NA | NA |
| dashboard_required_artifacts | NA | NA | NA | NA |
| quality_result | NA | NA | NA | NA |
| econometric_ml_comparison_rules | NA | NA | NA | NA |
| explainability_data_contract | NA | NA | NA | NA |
| explainability_definitions | NA | NA | NA | NA |
| validate_explainability_inputs | NA | NA | NA | NA |
| robustness_table | NA | NA | NA | NA |
| build_mobility_features | NA | NA | NA | NA |
| model_generalization | NA | NA | NA | NA |
| territorial_levels | NA | NA | NA | NA |
| validate_territorial_outputs | NA | NA | NA | NA |
| standard_name_map | NA | NA | NA | NA |
| territorial_ratio | NA | NA | NA | NA |
| sum_or_na | NA | NA | NA | NA |
| auc_rank | NA | NA | NA | NA |
| build_environment_manifest | NA | NA | NA | NA |
| survival_data_contract | NA | NA | NA | NA |
| survival_output_register | NA | NA | NA | NA |
| metric_value | NA | NA | NA | NA |
| download_raw_source | NA | NA | NA | NA |
| calibration_table | NA | NA | NA | NA |
| assess_person_year_feasibility | NA | NA | NA | NA |
| build_establishment_panel | NA | NA | NA | NA |
| panel_transition_dictionary | NA | NA | NA | NA |
| validate_establishment_panel | NA | NA | NA | NA |
| render_pipeline_reports | NA | NA | NA | NA |
| clean_names_depp | NA | NA | NA | NA |
| numeric_vif | NA | NA | NA | NA |
| cleaning_transformation_table | NA | NA | NA | NA |
| validate_cleaned_source | NA | NA | NA | NA |
| audit_predictor_leakage | NA | NA | NA | NA |
| econometric_limits | NA | NA | NA | NA |
| write_import_log | NA | NA | NA | NA |
| education_priority_lookup | NA | NA | NA | NA |
| feature_validation_report | NA | NA | NA | NA |
| register_output_files | NA | NA | NA | NA |
| write_provenance | NA | NA | NA | NA |
| validate_imported_data | NA | NA | NA | NA |
| fit_econometric_models | NA | NA | NA | NA |
| tidy_econometric_coefficients | NA | NA | NA | NA |
| build_personnel_2d_features | NA | NA | NA | NA |
| build_personnel_1d_features | NA | NA | NA | NA |
| validate_raw_csv | NA | NA | NA | NA |
| build_descriptive_plots | NA | NA | NA | NA |
| build_trajectory_plots | NA | NA | NA | NA |
| run_machine_learning_analysis | NA | NA | NA | NA |
| build_ml_workflows | NA | NA | NA | NA |
| validate_evaluation_predictions | NA | NA | NA | NA |
| run_model_evaluation | NA | NA | NA | NA |
| build_territorial_maps | NA | NA | NA | NA |
| write_pipeline_manifest | NA | NA | NA | NA |
| validate_dashboard_artifacts | NA | NA | NA | NA |
| audit_one_source | NA | NA | NA | NA |
| run_explainability_analysis | NA | NA | NA | NA |
| build_dalex_explainer | NA | NA | NA | NA |
| aggregate_personnel_territory | NA | NA | NA | NA |
| build_descriptive_tables | NA | NA | NA | NA |
| econometric_diagnostics | NA | NA | NA | NA |
| validate_survival_input | NA | NA | NA | NA |
| audit_survival_feasibility | NA | NA | NA | NA |
| run_panel_strategy | NA | NA | NA | NA |
| rename_standard_columns | NA | NA | NA | NA |
| validate_ml_input | NA | NA | NA | NA |
| run_feature_engineering | NA | NA | NA | NA |
| run_source_import | NA | NA | NA | NA |
| run_trajectory_analysis | NA | NA | NA | NA |
| calibration_by_period | NA | NA | NA | NA |
| classification_metrics_by_period | NA | NA | NA | NA |
| confusion_matrices | NA | NA | NA | NA |
| run_dashboard_validation | NA | NA | NA | NA |
| run_quality_audit | NA | NA | NA | NA |
| compute_global_importance | NA | NA | NA | NA |
| compute_partial_dependence | NA | NA | NA | NA |
| compute_shap | NA | NA | NA | NA |
| run_territorial_analysis | NA | NA | NA | NA |
| run_descriptive_analysis | NA | NA | NA | NA |
| run_econometric_analysis | NA | NA | NA | NA |
| prepare_personnel_survival | NA | NA | NA | NA |
| run_survival_analysis | NA | NA | NA | NA |
| clean_one_source | NA | NA | NA | NA |
| temporal_partition | NA | NA | NA | NA |
| run_all_imports | NA | NA | NA | NA |
| evaluate_model_predictions | NA | NA | NA | NA |
| explain_predictive_model | NA | NA | NA | NA |
| fit_personnel_survival | NA | NA | NA | NA |
| run_all_cleaning | NA | NA | NA | NA |
| final_temporal_split | NA | NA | NA | NA |
| tune_ml_workflows | NA | NA | NA | NA |
| finalize_and_test_ml | NA | NA | NA | NA |
| sources | 7.61 | 1531 | NA | NA |
| import_results | 18.87 | 810 | NA | NA |
| quality_report | 15.02 | 1886 | NA | NA |
| cleaned_data | 68.20 | 2490 | NA | NA |
| figures | 0.05 | 335619 | NA | NA |
| tables | 0.08 | 13229373 | NA | NA |
| Environnement de reproduction | |
| composant | version |
|---|---|
| R | R version 4.6.1 (2026-06-24 ucrt) |
| targets | 1.12.0 |
| renv | 1.2.4 |
| quarto | non installe |
| testthat | 3.3.2 |
| dplyr | 1.2.1 |
| ggplot2 | 4.0.3 |
| sf | 1.1.3 |
| shiny | 1.14.0 |
| tidymodels | 1.5.0 |
| Git commit | indisponible dans le processus de rendu |
20 Conclusion
Le projet fournit une analyse descriptive, territoriale et associative reproductible des données ouvertes disponibles. Il documente sans ambiguïté que celles-ci ne constituent pas un panel individuel de personnels. Les trajectoires professionnelles, le temps avant mobilité, la prédiction à t+1 et son explicabilité nécessitent le panel interne sécurisé de la DEPP ou une source individuelle longitudinale équivalente.
Le principal résultat méthodologique est donc double : les agrégats ouverts permettent d’étudier les structures et disparités observées, mais ils ne permettent pas de transformer une variation d’établissement en trajectoire personnelle. Cette frontière est contrôlée dans le code, les tests, le pipeline et les documents de diffusion.