<< Back

Deux astuces pour supprimer les premières lignes de vos fichiers avec Alteryx

Je voudrais partager avec vous deux techniques sur Alteryx pour vous débarrasser automatiquement des lignes qui vous embêtent au début de vos fichiers.

Imaginons un fichier .CSV très simple avec une en-tête encombrante :

 

Si on essaie de lire ce fichier dans Alteryx, il va grogner :

En effet, le premier séparateur (ici le « ; ») n’apparaît qu’à partir de la 8ème ligne… et Alteryx, qui croyait avoir jusque là un fichier avec un seul champ,  découvre des lignes avec plusieurs champs et il nous fait savoir qu’il n’est pas content !

Je vous propose deux moyens de traiter ce cas de figure :

  • Une version « simple » qui s’applique à des fichiers dont on connait à l’avance le nombre de ligne à supprimer
  • Une version « dynamique » qui permet de « détecter » automatiquement les lignes à supprimer, quelque soit leur nombre

 

Solution « Simple » :

Si on connait le nombre de ligne à supprimer, il suffit de : 

  1. Lire le fichier en spécifiant le séparateur « \0 » qui signifie « Absence de séparateur »
  2. Mettre de côté les lignes qui nous embête avec l’outil « Sample » et l’option « Skip 1st N Records »
  3. Découper les lignes conservées avec le séparateur qui va bien
  4. Renommer dynamiquement les champs à partir de la nouvelle ligne d’en-tête

Solution « Dynamique » :

Si au contraire le nombre de lignes à supprimer est amené à varier, il faut trouver une solution plus souple.
En fait il « suffit » de modifier l’étape « 2 » de la solution précédente :

L’utilisation d’un « Multi Row Formula » va nous permettre de parcourir le fichier du haut en bas jusqu’à trouver la ligne qui contient l’entête et de « marquer » alors cette ligne et les suivantes comme étant à conserver.
Je vous mets la configuration de l’outil :

La formule en bon français :

« Si la ligne courante contient l’entête attendue ou bien si la ligne précédente était déjà à conserver, alors « oui », il faut conserver cette ligne.
Sinon… bah non ! »

Ensuite il suffit de filtrer les lignes « à conserver » avec l’outil « Filter » et le tour est joué, on peut reprendre la suite du workflow comme précédemment.

Cet article m’a été inspiré par Olivier suite à une question qu’il a adressé à l’assistance. Je profite de ce post pour le remercier de nouveau de nos échanges 🙂

Vous pouvez télécharger le workflow depuis la Gallery Alteryx  (Attention, il faut que vous soyez authentifié pour pouvoir « Télécharger » le workflow)

Comme d’habitude n’hésitez pas laisser vos questions, commentaires ou à partager vos astuces !

Julien Beylat

Paris - Nantes

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *