Exploiter des données peu structurées

Proposé par André Meyer-Roussilhon

5 mars 2020

Data club

fichier texte

Restez à l'écoute, abonnez-vous à la newsletter (2 fois / mois)

4 + 2 =

Exploiter des données peu structurées

Scénario

C’est un exemple malheureusement d’actualité, puisqu’il s’agit des données de propagation du nouveau coronavirus (n’y voyez pas là d’intention macabre, c’est juste que je travaille sur un tableau de suivi de la progression du virus).

Les données sont récupérées dans un fichier texte dont voici les premières lignes :

Les champs vont par trois : le pays / le nombre de cas confirmés / le nombre de décès. Mais nous voyons tout de suite le problème pour exploiter ces données : au lieu d’être réparties sur trois colonnes, elles sont « aplaties » sur une seule. Il va donc falloir faire jouer Power Query et remettre ces données dans un format utilisable.

Il y a au moins deux façons de faire : une pincée de M ou l’interface utilisateur. J’ai choisi la seconde option, en me servant de la fonction MODULO, de colonnes conditionnelles, et de filtres.

Intégration des données « aplaties »

L’aperçu confirme la première impression, il va falloir transformer les données :

Pour commencer, j’ai ajouté une colonne d’index :

Comme je le disais plus haut, les lignes vont par trois : il doit donc être possible d’identifier les lignes contenant les pays, les cas confirmés, et les décès, et d’une manière ou d’une autre, les séparer.

La fonction magique, ici, c’est MODULO. Elle se cache dans l’onglet Ajouter une colonne, menu Standard :

La colonne Index étant sélectionnée, je vais indiquer la valeur du modulo, à savoir 3, pour insérer une nouvelle colonne :

Chaque ligne mentionnant un pays est marquée « 1 », les cas confirmés, « 2 », et les décès « 0 ».

La suite des opérations consiste à ajouter des colonnes conditionnelles et à filtrer. Commençons par les pays : je vais créer une colonne « Pays » qui contient le nom du pays si la colonne Modulo est égale à 1 :

Il faut ensuite que je répète cette valeur sur chaque ligne (onglet Transformer, puis Remplir vers le bas), pour avoir le pays « en face » des cas confirmés :

Je peux maintenant filtrer les lignes où Modulo est égal à 1 :

Et je répète l’opération pour Modulo égal 2, à savoir ajout de la colonne conditionnelle, remplir vers le bas, filtrer les lignes où Modulo égal 2 :

Il ne me reste qu’à supprimer les colonnes Index et Modulo, affecter le bon type (Texte, Entier) et renommer la dernière colonne « Décès ». Le tour est joué (par le clic-droit, il est possible de déplacer la colonne à la fin) :

Articles associés :

Le point sur mon implication dans Power BI

Le point sur mon implication dans Power BI

Depuis juillet 2109, date à laquelle mon premier livre sur Power BI est sorti, il s’est passé beaucoup de choses, et plus encore au cours des derniers mois. Dans ce billet, je veux vous proposer un tour d’horizon des ressources que j’ai publiées sur le thème de Power BI, et de ce que je prévois pour la suite.

Utilisez M : des exemples simples et concrets

Ce billet fait suite à celui consacré à la découverte de l’environnement M. Dans celui-ci , nous voyons les premiers exemples utiles d’utilisation de ce code, pour nettoyer une source de données

Une pincée de M

Le but des billets que je vais consacrer au langage M, qui se cache derrière Power Query, est d’en proposer une découverte, de mettre en perspective l’utilité d’apprendre ce langage, et de dérouler un nombre de cas concrets directement utiles