Mise en relation de données
Problématique
Dans de nombreux cas de figure, nous ne disposons pas de toutes les données suffisantes pour une analyse dans une seule source de données. Il est alors nécessaire de procéder à ce que nous appelons la mise en relation des données. Pour cela, nous nous appuyons sur des clés, à savoir des informations partagées entre les différentes sources de données à relier entre elles, de façon à ce que l’ensemble des sources forme un tout homogène, et surtout exploitable.
Nous allons étudier ci-dessous les différents moyens pour créer une relation entre plusieurs sources de données et montrer les pièges d’un manque de relation entre les données, ce qui peut amener à des calculs faux.
Mise en place de relation
Présentation des données
Nous allons utiliser deux sources de données en provenance de l’INSEE pour illustrer les concepts de clé et de relation, et voir un exemple d’application. La première correspond aux données géographiques des communes de France, tandis que la seconde reprend les résultats des élections présidentielles 2012.
Les sources utilisées pour l’exemple qui suit sont livrées dans les téléchargements associés au livre, dans le sous-répertoire Sources.
La première source donne, pour toutes les communes de France, des informations sur le département et la région d’appartenance, ainsi que la population de la commune. Son format est celui d’un fichier CSV (Comma Separated Values), bref un simple fichier texte dans lequel les données sont séparées traditionnellement par des virgules, comme l’indique l’acronyme, bien que dans notre cas précis le séparateur soit le point-virgule. Vous trouverez ce fichier dans les téléchargements sous le nom de Appartenance-géographique-des-communes-01-01-2009 - NON FORMATE.csv.
Voici les dix premières lignes de cette source de données :
#"Département commune";"Libellé de
commune";"Région";"Département";"Arrondissement";"Canton ville";"Zone
d'emploi";"Unité urbaine";"Aire urbaine";"Espace urbain";"Tranche d'aire
urbaine";"Tranche de commune";"Taille des unités urbaines";"Tranche
détaillée d'unité urbaine";"Bassin de vie";"Etablissement public à
fiscalité propre";"Nature d'établissement public";"Catégorie de
ZAUER";"Population sans doubles comptes 1999";"Population municipale
2007"
#"CODGEO";"LIBGEO";"REG";"DEP";"ARR";"CV";"ZE1990";"UU1999";
"AU1999";"EU1999";"TAU1999";"TC1999";"TUU1999";"TDUU1999";"BV";
"N° EPCI";"Nature EPCI";"ZAUER1999";"PSDC99";"Pop_mun_2007"...
Exemple sur les bases de données
Dans le chapitre précédent, nous avions sauvegardé un fichier sous le nom PowerPivotAdventureWorks.xslx, à la suite de la manipulation consistant à incorporer des données en provenance d’une base de données SQL Server.
Nous allons nous reporter à ce fichier pour mettre en place les relations sur les tables de dimensions associées. Parler de mise en place est d’ailleurs abusif : nous allons voir que PowerPivot nous a considérablement facilité le travail.
Nous effectuons les opérations suivantes :
Ouvrez le fichier sauvegardé lors du chapitre sur la gestion des sources de données, sous le nom PowerPivotAdventureWorks.xslx.
Dans le volet Champs de tableau croisé dynamique, déroulez DimCurrency (si vous ne voyez pas cette catégorie, vérifiez que TOUS est bien actif dans le haut de la liste).
Faites glisser le champ CurrencyName dans la section COLONNES.
Faites glisser le champ CurrencyKey depuis la zone COLONNES vers la liste des champs, ce qui a pour effet de supprimer son utilisation.
Réalisez la même opération pour intervertir les champs ResellerKey et ResellerName, que vous trouverez en ouvrant la section DimReseller.
Vous pouvez alors constater la similitude des résultats, tout en ayant amélioré fortement l’affichage...