Une Data Expedition, pas à pas

SafariScreenSnapz080J’ai récemment animé un atelier dans le cadre de l’Open Data Camp organisé par Etalab. Cette Data Expedition portait sur le thème de l’égalité hommes-femmes, en lien avec le projet de loi actuellement en discussion au Parlement. Je vous propose ici un retour détaillé sur l’un des 2 sujets que nous avons traité, à savoir la participation des femmes à la vie économique.

1 – Définir le sujet: la représentation féminine au sein des chambres consulaires

Le site du Sénat référence l’étude d’impact du projet de loi sur l’égalité hommes – femmes. Le document est dense (près de 140 pages) et il couvre de nombreux sujets (les inégalités salariales, les violences faites aux femmes, les impayés des pensions alimentaires, …). Je me suis particulièrement intéressé aux annexes, qui comprennent un grand nombre de tableaux avec des données. Le tableau ci-dessous recense le nombre de femmes élues au sein des chambres consulaires territoriales et régionales (CCI), pour la mandature en cours (2010-2015). Ce sera le point de départ de notre expédition: je vous laisse l’étudier rapidement.

Le tableau issu de l'étude d'impact

Le tableau issu de l’étude d’impact

2 – Comprendre les données

Le tableau n’est pas d’un abord aisé. Certaines colonnes concernent des données actuelles, d’autres des projections et mesurent l’impact du projet de loi sur cette question précise. Il m’a fallu relire les chapitres consacrés à cette disposition pour mieux cerner le sujet. J’ai ensuite retravaillé les données pour les extraire et les rendre réutilisables.

Il faut noter à ce stade que l’étude d’impact est proposée en deux formats sur le site du Sénat: en PDF et en HTML. Bien sûr, il est plus simple d’utiliser le second format pour importer les données. J’ai donc utilisé mon tableur favori pour copier toutes les cellules, puis j’ai procédé à un rapide reformatage, en me concentrant sur les CCI territoriales: suppression des colonnes relatives au CCI regionales et des données de projection, dé-fusionnage de cellules, …

3 – Le fichier base de travail

Voilà le travail à l’issue de ces premières opérations. Je précise qu’à ce stade toutes ces opérations se sont déroulées en amont de l’Open Data Camp, ce n’est qu’une étape de préparation des données. J’ai ensuite crée un document partagé à l’aide de Google Drive. En voici une copie d’écran ci-dessous.

Le fichier nettoyé

Le fichier nettoyé

Le matin du 28 novembre nous avons donc lancé cette expédition – un atelier parmi la demi-douzaine proposés par les participants. Mon sous-groupe était composé de Marie-Cécile Huet, Claudio Vandi, Louis-David Benyayer et de renforts ponctuels au cours de la journée. Nous avons donc commencé par nettoyer le fichier en corrigeant quelques erreurs et abréviations. Par exemple on pouvait lire « Puy-de-D. » que nous avons transformé en « Puy-de-Dôme ». La discussion a ensuite porté sur les réutilisations que nous pourrions imaginer: faire une carte, proposer un classement, proposer des pistes d’analyse, etc…

4 – Compléter et enrichir le fichier

Nous avons d’abord complété le fichier en rajoutant les adresses de chaque chambre de commerce. Le site CCI France propose un annuaire … mais aucune donnée en open data ! Une partie de l’équipe a donc rajouté manuellement toutes les adresses (NB: notre fichier comporte une centaine de lignes, il est probable que s’il avait compté 1000 lignes nous aurions cherché un moyen d’automatiser cette tâche). Puis, les adresses ont été géocodées (ie. transformées en coordonnées X,Y) à l’aide du site gpsfrance.net.

La fiche d'une CCI (source CCI France)

La fiche d’une CCI (source CCI France)

Autre enrichissement de la donnée initiale: le même site CCI France propose le nom du président et du directeur général pour chaque chambre de commerce de France. Nous avons donc rajouté 2 colonnes: le genre (H/F) pour ces deux fonctions. Là, nous avons été confronté à quelques cas plutôt amusants: beaucoup d’entre eux portent le prénom Dominique, un prénom unisexe (notons qu’il n’y a rien de très surprenant ici: les Dominique ont l’âge d’occuper de tels postes, pas encore les Kevin ou les Emma !). Nous avons donc recherché leur sexe via Google… et très majoritairement nos Dominique sont des hommes.

5 – Visualiser les données à l’aide de Google Fusion Tables

Nous avons ensuite importé les données dans l’outil Google Fusion Tables, l’un des (nombreux) services en ligne qui permettent de réaliser des visualisations basiques. A noter que Fusion Tables propose son propre outil de géocodage, qui produit des erreurs relativement faciles à repérer (ex. la ville de Vienne, située en Isère, est confondue avec son homonyme autrichienne).

Fusion Tables nous propose plusieurs visualisations, nous avons commencé par une carte de chaleur (heatmap), présentée ci-dessous.

La carte de chaleur

La carte de chaleur

La carte est jolie, mais elle est hors de propos ;-(

Ce qu’elle nous donne à voir ce n’est pas tant l’inégalité hommes-femmes que la densité territoriale des chambres de commerce ! Pour pouvoir faire une carte de chaleur, il nous faudrait des données beaucoup plus nombreuses, plus denses. Nous aurions aussi besoin d’une donnée non disponible: le découpage territorial de chaque chambre de commerce…

Nous avons donc travaillé sur une carte plus classique, avec des points colorés en fonction du taux de féminisation (qui varie de 0% à 30%).

Fusion Tables permet de personnaliser le nombre de classes différentes que l’on veut représenter: on peut souhaiter représenter les CCI selon un code avec 2, 3 ou même 6 couleurs. La fonction « use this range » (cf. détail ci-dessous) permet de répartir automatiquement chaque point dans l’une des classes. Gros souci: le choix des couleurs proposé par l’outil est inepte dès que l’on dépasse 3 niveaux différents… et le résultat n’est guère compréhensible, il vaudrait mieux utiliser des dégradés de couleurs (ou conseiller aux ingénieurs de Google de relire Bertin…).

Les options de Fusion Tables

Les options de Fusion Tables

Nous nous sommes donc limités à trois couleurs, avec un code simple à comprendre: en vert les 4 CCI qui ont un taux de féminisation supérieur à 30%, en rouge celles dont le taux est inférieur à 15% et en orange les autres… Bien sûr l’on peut rediscuter du choix des classes. Par exemple, nous pourrions tout aussi bien choisir de ne mettre en vert que les CCI où la parité est atteinte – au risque bien réel de n’avoir aucun point vert sur la carte !

Voilà la carte telle qu’elle est aujourd’hui publiée. Dans la version interactive, quand on clique sur un point on retrouve davantage d’informations: le nom du territoire, le nombre de sièges, le taux de féminisation et les genres des directeurs et présidents.

Le résultat

Le résultat (la légende est décrite dans le texte ci-dessus)

6 – Une histoire à raconter ?

Une fois la visualisation terminée, nous avons essayé de comprendre ce qu’elle nous racontait… Elle révèle bien sûr une inégalité hommes-femmes, mais nous espérions secrètement découvrir des motifs géographiques beaucoup plus nets. C’est le comble: nous attendions une confirmation de nos pires stéréotypes (« c’est vraiment des gros machos dans le Sud ! »).

Nous en étions là de notre relative déception quand Sabine Blanc est arrivée. Sabine est journaliste. Ex-Owni, elle signe notamment les nombreux papiers de la Gazette des Communes sur l’open data. Elle nous a rassuré en disant que la visualisation n’était sans doute pas l’histoire, mais qu’elle pouvait très bien accompagner un article, par exemple sur le fait que seules 4 CCI sur 117 ont plus d’un tiers de femmes parmi leurs élus !

7 – Pour aller plus loin

Le jeu de données est disponible en ligne, vous pouvez le compléter et l’enrichir. Il s’agit essentiellement de « densifier » les données existantes. Par exemple en ajoutant des données historiques: le jeu publié ne concerne que la mandature 2010-2015. On pourrait aussi poursuivre le travail de qualification: les femmes élues occupent-elles des places au sein du bureau des CCI ? Sont-elles davantage issues de l’industrie, du commerce ou des services ? On peut aussi imaginer des jeux de données pour compléter celui-ci. Par exemple le découpage territorial précis des CCI (astuce: on doit pouvoir le recomposer à partir du site CCI France qui indique, pour chaque commune de France, la CCI de rattachement)… A vous de jouer !

Donnée brute ou donnée contextualisée ?

La mission gouvernementale Etalab lance une consultation autour de l’évolution du portail data.gouv.fr. Vous êtes invités à contribuer à cette démarche de co-design. C’est aussi l’occasion de repenser plus globalement la conception des portails open data… A quoi et à qui servent-ils ? Comment doit-on présenter les données ? Je vous propose une série de billets sur ce thème. Le premier traite de la donnée elle-même et de la tension entre donnée brute et donnée contextualisée…

1 – Un cas pratique : la fréquentation des musées

J’ai récemment animé un atelier de sensibilisation à l’open data pour les acteurs culturels d’une collectivité. A cette occasion, j’ai repéré un jeu de données disponible sur le portail gouvernemental. Ce fichier propose les chiffres de la fréquentation des musées de France, de 2006 à 2010. Je vous invite à télécharger celui qui concerne la région Bretagne (pour plus de facilité, je vous propose aussi une copie d’écran ci-dessous, que vous pouvez agrandir en cliquant).

(cliquer pour l'agrandir) - fréquentation des musées de France, source Ministère de la Culture sur data.gouv.fr

La fréquentation des musées de France, source Ministère de la Culture sur data.gouv.fr (cliquer pour agrandir l’image)

Le tableau présente les chiffres de fréquentation pour chaque « musée de France » situé dans la région. On a donc le nom du musée (ex. « musée des beaux-arts »), une ville, puis les chiffres de fréquentation répartis en 2 colonnes « total » et « grat ». On peut raisonnablement supposer qu’il s’agit des entrées gratuites (mais rien ne le précise formellement, ni dans le fichier, ni dans la fiche de métadonnées). D’autres colonnes précisent l’évolution de la fréquentation d’une année sur l’autre.

Le code couleur est expliqué en pied de page du fichier. La couleur noire représente des « données confidentielles », avec la mention « contacter le chef d’établissement », les autres couleurs viennent apporter des éléments de contexte sur la fréquentation de tel ou tel musée. En l’occurence il y est surtout question d’évènements exceptionnels susceptibles d’expliquer le chiffre de fréquentation : fermeture ou réouverture d’un musée, exposition temporaire ayant entraîné une fréquentation exceptionnelle, …

Plus intéressant, la première colonne du tableau contient un numéro de référence, qui **semble** être un identifiant unique accordé à chaque musée de France.

2 – La tension « brutification » vs. contextualisation

La lecture de ce fichier permet d’illustrer la tension entre deux tendances qui s’expriment aujourd’hui dans le monde de l’open data.

La première tendance est liée à une demande de « brutification ». Je reprends ici le terme évoqué par Samuel Goeta et Jérôme Denis pour décrire l’une des actions qui se déroulent dans les coulisses de l’open data (le thème de la thèse de Samuel à Telecom Paris Tech).

Pour permettre la mise en place d’un ensemble de services sur le portail open data, il faudrait que la donnée proposée soit la plus brute possible (et je parle bien là d’une donnée brute techniquement, pas en termes sociologiques).

Parmi ces « services » on peut citer par exemple la pré-visualisation des jeux de données sans avoir à ouvrir le fichier (une fonctionnalité très utile et déjà mis en oeuvre ailleurs), la datavisualisation ou représentation cartographique par défaut (un exemple ici), ou enfin même les API (des interfaces de programmation qui font aujourd’hui cruellement défaut dans la plupart des portails, à quelques exceptions près). Sans même parler d’un pas vers le web des données et le Linked Data, une attente forte des acteurs du web sémantique.

Reprenons le fichier sur la fréquentation des musées : pour proposer tous ces services il faudrait donc faire un travail *supplémentaire* de brutification : retirer les codes couleurs, ignorer les colonnes qui proposent une donnée recalculée (le taux d’évolution d’une année sur l’autre, les totaux, …) et plus globalement retirer tout ce qui concerne la mise en forme du fichier. On pourrait d’autre part mieux utiliser des données qui y figurent déjà, ainsi le fameux numéro de référence.

J’ai trouvé sur le portail un autre fichier qui fournit des informations complémentaires sur les musées de France : leur adresse postale, le site web, les horaires et jours d’ouverture. Problème : ce fichier ne propose aucun identifiant unique. On a là une occasion manquée de permettre une mise en relation et un enrichissement de deux fichiers (open data 1 – web sémantique 0).

La donnée proposée ici n’est donc pas tout à fait « brute » … mais elle n’est pas tout à fait contextualisée non plus !

La seconde demande qui émerge – et qui de prime abord peut sembler contradictoire avec la brutification – est liée à la contextualisation de la donnée.

J’ai déjà eu l’occasion ici de parler de l’importance d’une lecture critique des données. Si l’on considère le fichier sur la fréquentation des musées, ce besoin de contextualisation apparaît rapidement : qu’est-ce qu’un « musée de France » ? comment les données de fréquentation sont-elles collectées ? quel est l’usage initial des données ? qui la collecte et pour quoi faire ? Et enfin, la meilleure : pourquoi certaines données sont-elles considérées comme « confidentielles » (celles dont les cases portent la couleur noire) ?

La réponse à bon nombre de ces questions se trouve sur le site du Ministère de la Culture (précision importante : j’ai trouvé cela via Google, pas depuis la fiche de métadonnées). On y apprend qu’un service du ministère publie annuellement un très intéressant document de 75 pages, appelé « MuséoStat« . J’ai ainsi pu comprendre que le terme « musée de France » correspond à une appellation officielle (accordée et retirée par les services du ministère), que les variations de fréquentation sont très souvent liées à des expositions temporaires (d’où l’importance des annotations colorées), que la notion de gratuité a elle aussi une définition officielle précise, …

Le document reproduit aussi le questionnaire envoyé aux différents responsables de musée, questionnaire très détaillé puisqu’il précise aussi le mode de mesure de la fréquentation (comptage manuel, automatisée, estimation, …). Enfin, on peut apercevoir en fin de questionnaire une case à cocher par les répondants : « acceptez-vous que ces chiffres soient diffusés ? ». Voilà donc l’origine de cette formule un peu ambigüe de « données confidentielles » !

Cette demande de contextualisation me semble tout aussi pertinente que la demande de brutification du jeu de données. On doit pouvoir y répondre en repensant profondément la manière de documenter les jeux de données – c’est à la fois le rôle des métadonnées mais aussi plus globalement la fonction éditoriale des portails open data.

3 – Sortir de l’opposition « qualité vs. quantité » des données

Le fichier de la fréquentation des musées ne représente bien sûr pas à lui seul la diversité et la richesse des jeux de données disponibles, sur data.gouv.fr ou ailleurs … Mais cet exemple illustre quand même je pense la situation actuelle : des données ni tout à fait brutes, ni tout à fait contextualisées.

La particularité du ni-ni est qu’il ne satisfait ni ceux qui attendent des services plus poussés (API, Linked Data pour les développeurs), ni ceux qui militent pour une meilleure appropriation des données par tous (façon Infolab) – bien qu’ils ne faillent pas opposer les uns et les autres.

Dans le débat qui va s’ouvrir sur les fonctions des portails open data, il y a à mon avis un écueil majeur à éviter : réduire cela à une opposition « qualité vs. quantité » des jeux de données.

La qualité ne peut s’évaluer qu’à l’aune de l’objectif : un développeur, un chercheur ou un associatif qui veut évaluer la fréquentation des musées de sa région ont tous besoin de fichiers de qualité.

C’est la manière dont ils expriment ce besoin qui diffère (notre tension brutification / contextualisation). Il nous faut donc à la fois de la qualité ET de la quantité…

4 – De qui est-ce le travail ?

Reste la question du rôle de chaque acteur impliqué : qui doit assurer ces tâches de brutification et de contextualisation ? Est-ce la mission du service détenteur de la donnée ou du service qui met en oeuvre le portail, en l’occurence Etalab ? Les réutilisateurs  enrichissent eux-aussi les jeux de données, par exemple en reliant deux fichiers via des identifiants, peut-on imaginer qu’un portail officiel puisse héberger, ou faire un lien vers le fruit de leur travail ?

On voit qu’à partir d’une question précise – quelles fonctions pour les portails open data ? – on en arrive à interroger le périmètre même des portails et des organisations qui les mettent en oeuvre…