Power Query remove duplicates : éliminer les doublons
Découvrez comment utiliser remove duplicates pour éliminer efficacement les doublons dans vos données d’entreprise, en préservant la ligne la plus pertinente selon votre contexte métier. Cette fonctionnalité est essentielle pour garantir la fiabilité des rapports financiers et des analyses de contrôle de gestion.
Supprimer les doublons avec Power Query est crucial en data
En finance d’entreprise, les données en double peuvent fausser les calculs de coûts, les marges et les prévisions budgétaires. Remove duplicates permet de conserver automatiquement la première occurrence de chaque combinaison de colonnes sélectionnées, tout en supprimant les suivantes. Cette opération est indispensable pour nettoyer les tableaux de bord avant leur intégration dans des rapports Power BI ou Excel.
Les analystes de données rencontrent souvent des problèmes de cohérence lorsqu’ils fusionnent plusieurs sources : doublons multiples d’un même client, transactions répétées par erreur, des mises à jours de prix dupliquées. Sans un nettoyage rigoureux, ces erreurs se propagent dans les modèles financiers et compromettent la prise de décision.
Méthode 1 : Utiliser l’interface utilisateur classique
La méthode la plus simple pour appliquer remove duplicates consiste à utiliser le ruban de l’éditeur Power Query. Voici la procédure étape par étape :
- Sélectionnez les colonnes contenant des valeurs en double
- Accédez à l’onglet Accueil dans le ruban
- Dans le groupe Réduire les lignes, cliquez sur Supprimer les lignes
- Choisissez Supprimer les doublons dans le menu déroulant
Cette approche génère automatiquement le code M = Table.Distinct(#"Previous Step", {"ColA", "ColB"}), qui conserve la première ligne vue pour chaque combinaison unique.
Méthode 2 : Gérer les cas sensibles aux différences de casse
Parfois, « ACME » et « Acme » doivent être traités comme le même client. Dans ce cas, remove duplicates nécessite une égalité insensible à la casse. Pour y parvenir :
- Ajoutez une étape de comparaison avec
Comparer.OrdinalIgnoreCase - Utilisez le code M
= Table.Distinct(#"Previous Step", CompanyName, Comparer.OrdinalIgnoreCase) - Appliquez cette méthode avant de supprimer les doublons
Cette technique est particulièrement utile pour fusionner des listes de clients provenant de différents systèmes où la normalisation des noms n’est pas garantie.
Préparation des données avant suppression des doublons
La fiabilité de remove duplicates dépend fortement de la qualité de préparation des données. Avant d’appliquer la suppression, il est crucial de nettoyer les espaces superflus et de normaliser les formats.
Les espaces en début ou en fin de chaîne peuvent créer des doublons invisibles. Pour corriger ce problème, utilisez la fonction Text.Trim() sur les colonnes concernées. Exemple de code M :
= Table.TransformColumns(Source, {{"CompanyName", Text.Trim}})
De plus, si vous devez conserver la dernière transaction (par exemple, la mise à jour de prix la plus récente), vous devez trier les données avant de supprimer les doublons. Le tri s’effectue dans l’ordre décroissant de la date ou du timestamp pertinent :
- Triez par la colonne date en ordre décroissant (DESC)
- Utilisez
Table.Buffer()pour forcer le tri en mémoire avant la suppression - Appliquez ensuite remove duplicates pour conserver la première ligne (la plus récente)
Sans l’usage de Table.Buffer(), Power Query peut traiter les lignes de manière non séquentielle, conduisant à la conservation de la ligne incorrecte. Cette erreur est fréquente dans les rapports de contrôle de gestion où la date de mise à jour est la clé de décision.
Conserver uniquement les doublons pour analyse d’erreurs
Dans certains cas, il est utile de savoir quelles lignes sont dupliquées pour identifier des erreurs de saisie. Power Query permet de conserver uniquement les doublons trouvés :
- Sélectionnez les colonnes concernées
- Accédez à l’onglet Accueil
- Dans le groupe Réduire les lignes, choisissez Conserver les lignes
- Activez Conserver les doublons dans le menu
Cette fonctionnalité permet de générer une liste d’erreurs de saisie, utile pour les audits de contrôle de gestion ou les vérifications de conformité des données financières.
Intégration de Power Query dans les flux de données réels
L’application de remove duplicates s’intègre naturellement dans des flux de données complexes. Vous pouvez combiner cette étape avec d’autres transformations comme le regroupement, la fusion, ou l’ajout de colonnes conditionnelles.
Pour un reporting financier complet, vous pouvez regrouper les données par produit, extraire la date de mise à jour maximale, puis fusionner cette table avec la source initiale. Cette approche permet de conserver uniquement la ligne la plus récente pour chaque produit, garantissant ainsi la précision des prix utilisés dans les modèles de marge.
En complément, explorez Power Query, un allié de choix pour Excel pour comprendre comment automatiser ces transformations dans vos tableaux de bord.
De plus, pour des scénarios nécessitant une analyse comparative entre solutions, consultez Power BI vs Excel : le guide ultime afin de choisir la meilleure plateforme pour vos besoins de reporting.
Pour approfondir les techniques de nettoyage avancé, consultez le guide officiel de Microsoft sur Power Query.
Conclusion
La fonction remove duplicates est un outil indispensable pour garantir la fiabilité des données dans les modèles financiers et les tableaux de bord BI. En combinant un nettoyage rigoureux, un tri adapté et l’usage de Table.Buffer(), vous évitez les erreurs de conservation de la ligne incorrecte. Appliquez cette méthode dès maintenant pour améliorer la précision de vos rapports et analyses.
FAQ
Comment conserver la dernière ligne quand on supprime les doublons ?
Triez la colonne chronologique en ordre décroissant, utilisez Table.Buffer(), puis appliquez remove duplicates pour garder la première ligne (la plus récente).
Power Query traite « ACME » et « Acme » comme des doublons ?
Non, par défaut il les distingue. Utilisez Comparer.OrdinalIgnoreCase dans le code M pour les traiter comme identiques avant suppression.