Magazine Informatique

Power Query: Voici un exemple de transposition de données utile

Publié le 31 juillet 2017 par Sopmar01 @mon_cher_watson

Récemment, un client m’a soumis une problématique de transposition de données intéressante, que j’ai résolue avec Power Query. Cet article vise à expliquer la démarche que j’ai utilisée.

Données de départ

Le client possède un système qui enregistre les coordonnées de ses clients à lui. Ce système exporte les données dans le format ci-dessous.

Données origines PQ Transposition

Afin de pouvoir analyser ses données et de les croiser avec d’autres sources de données, mon client souhaitait accéder à ces données sous forme de base de données régulière, i.e. une colonne pour les noms, une colonne pour les adresses, une colonne pour les villes, etc.

Requête de transformation avec Power Query

Afin de transformer les données de mon client dans le format recherché, j’ai effectué 7 grandes étapes de transformations.

Étape 1 : Importation des données

J’ai importé les données dans Power Query et j’ai nommé cette requête TableOrigine.

Étape 2: Création d’une requête Max

J’ai fait une référence à la requête TableOrigine, afin de créer la requête Max.

Power Query Reference

Dans ma requête Max, j’ai effectué un regroupement (Group By ou Regroupement par) afin d’obtenir la valeur maximum de ma colonne 1.

Power Query Group by Max

Cette valeur maximum correspond au nombre d’enregistrements différents dans mes données sources, dans ce cas-ci, 3. En effet, j’ai un premier enregistrement qui désigne les titres de colonnes, j’ai un deuxième enregistrement pour Paul Lebeau et j’ai un troisième enregistrement pour Lucie Lavigne.

Afin d’extraire la valeur de ce maximum, j’ai cliqué avec le bouton droit de ma souris sur le 3 et j’ai choisi l’option Drill Down (Forer).

Power Query Drill Down

Étape 3: Création d’une liste

J’ai créé une liste qui répète les chiffres 1 à 8, 3 fois. Notez que le 3 est déterminé par ma requête Max, qui évoluera selon le nombre d’enregistrements sous-jacents.

Power Query List.Repeat

J’ai ensuite converti cette liste en table.

Power Query List to Table

Et j’ai ajouté une colonne Index, à partir de 1.

Power Query Ajout Index

J’ai donc obtenu le résultat suivant, que j’ai nommé Liste. L’idée est de jumeler cette liste avec ma table d’origine afin de me servir des chiffres de 1 à 8 pour identifier les lignes qui correspondent à des noms, des adresses, des villes, etc.

Power Query Liste

Étape 4: Fusion de requêtes

J’ai à nouveau fait une référence à ma table d’origine et  j’ai inséré un colonne d’index à partir de 1. J’ai renommé cette requête PowerQuery.

Power Query Table plus Index

Ceci m’a permis de fusionner cette requête avec la requête Liste.

Power Query Fusion Requêtes

J’ai donc obtenu le résultat suivant.

Power Query Transposition En Cours

Étape 5: Désengorgement de la requête fusionnée

J’ai supprimé les 8 premières lignes, qui contenaient les titres de colonnes et j’ai supprimé ma colonne d’index.

Power Query: Voici un exemple de transposition de données utile

Étape 6: Ajout de colonnes conditionnelles

J’ai ajouté des colonnes conditionnelles, pour aller récupérer les valeurs des cellules de noms, d’adresses, de villes, etc.

Power Query: Voici un exemple de transposition de données utile

J’ai donc obtenu le résultat suivant.

Power Query plusieurs colonnes conditionnelles

Étape 7: Remplissage vers le haut et filtre

J’ai effectué un remplissage vers le haut sur ces colonnes (Fill up).

Power Query Fill Up

Ce faisant, j’ai pu obtenir l’ensemble des données recherchées sur chacune des lignes dont la valeur de la colonne Column 1.1 était égale à 1.

Power Query Filtrer sur 1

J’ai donc fait un filtre sur cette colonne, pour ne conserver que les valeurs égales à 1.

Power Query Résultat Final Transposition

Conclusion

Il existe sans aucun doute une panoplie de solutions alternatives. Si vous avez d’autres suggestions, n’hésitez pas à les partager dans la zone de commentaires, ci-dessous.


NOTRE OFFRE DE FORMATIONS


Microsoft Most Valuable Professional

Le CFO masqué vous offre un vaste choix de formations Excel, notamment en tableaux de bord et en modélisation financière, ainsi qu’une série de formations en lien avec Power BI. Ces formations sont offertes en classe, en entreprise et en ligne. Nos formateurs sont des experts dans leur domaine et ils sont accrédités par Emploi-Québec et vous remettent un certificat, à la fin de chaque formation, que vous pouvez notamment utiliser pour faire reconnaître des heures de formation continue auprès de votre ordre professionnel. De plus, nos formations peuvent mener à l’obtention d’une accréditation.

Découvrez quelles formations vous conviennent

Pour info: 514-605-7112 ou [email protected]


Retour à La Une de Logo Paperblog

A propos de l’auteur


Sopmar01 3934 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte