Remplacer des valeurs NULL ou manquantes par des zéros ou des données existantes
Date de publication : 27 Mar 2017 Date de dernière modification : 09 Feb 2024
Question
Comment remplacer des valeurs NULL ou manquantes par des zéros.
Par exemple, chaque projet devrait avoir trois étapes dans la vue, et s'il n'y a pas de données [Montant] pour une étape, la vue devrait afficher zéro.
Environnement
Tableau Desktop
Réponse
CLIQUER POUR DÉVELOPPER L'OPTION 1
Option 1 : Utiliser ZN
Sélectionnez Analyse > Créer un champ calculé
Dans la boîte de dialogue Champ calculé qui s'ouvre, procédez comme suit, puis cliquez sur OK :
Nommez le champ calculé. Dans cet exemple, le champ calculé est appelé « Remplacer les cellules vides par zéro (opt 1) »
Dans le champ de formule, créez un calcul du type suivant :
ZN(SUM([Amount]))
La fonction ZN() remplace les valeurs NULL par un zéro.
Créez un champ calculé appelé par exemple « Remplacer les cellules vides par la dernière valeur (opt 1) » avec un calcul du type suivant :
IFNULL( SUM([Amount]), PREVIOUS_VALUE(0) )
IFNULL(..., PREVIOUS_VALUE(0)) remplace toutes les valeurs NULL par la dernière valeur de ce calcul, ce qui crée une dernière valeur cumulée.
Remplacez [Quantité] dans Texte sur la fiche Repères par [Remplacer les cellules vides par zéro (opt 1)] ou [Remplacer les cellules vides par la dernière valeur (opt 1)] selon le résultat souhaité
(Facultatif) Personnalisez les valeurs dans la vue en faisant un clic droit sur la valeur et en la mettant en forme comme souhaité.
Pour consulter les étapes présentées dans la vidéo ci-dessous, veuillez développer la section ci-dessus. Remarque : la vidéo n'a pas de son.
CLIQUER POUR DÉVELOPPER L'OPTION 2
Option 2 : Remplacer le filtre par un paramètre
Cette option remplace les données NULL et les données qui ont été filtrées hors de la vue par des zéros.
Cliquez sur la flèche bas à côté de Dimensions dans le volet Données et choisissez Créer un paramètre...
Dans la boîte de dialogue Créer un paramètre, procédez comme suit puis cliquez sur OK :
Nommez le paramètre. Dans cet exemple, je l'appellerai « Paramètre de date ».
Dans Type de données, sélectionnez Date
Sous Valeurs autorisées, sélectionnez Toutes
Faites un clic droit sur [Paramètre de date] dans le volet Données et sélectionnez Afficher la commande de paramètre.
Sélectionnez Analyse > Créer un champ calculé
Dans la boîte de dialogue Champ calculé qui s'ouvre, procédez comme suit, puis cliquez sur OK :
Nommez le champ calculé. Dans cet exemple, le champ calculé est appelé « Montant filtré ou zéro (opt 2) »
Dans le champ de formule, créez un calcul du type suivant :
ZN( IF [Date] >= [Date Parameter]
THEN [Amount]
END )
La fonction ZN() remplace les valeurs NULL par un zéro. La déclaration IF prend la place du filtre [Date].
Créez un champ calculé appelé par exemple « Montant filtré ou dernière valeur (opt 2) » comportant un calcul du type suivant :
IFNULL( SUM( IF [Date] >= [Date Parameter] THEN [Amount] END ), PREVIOUS_VALUE(0) )
IFNULL(..., PREVIOUS_VALUE(0)) remplace toutes les valeurs NULL par la dernière valeur de ce calcul, ce qui crée une dernière valeur cumulée.
Remplacez [Montant] dans Texte sur la fiche Repères par [Montant filtré ou zéro (opt 2)] ou [Montant filtré ou dernière valeur (opt 2)] selon le résultat final souhaité
Supprimez [Date] de l'étagère Filtres
(Facultatif) Personnalisez les valeurs dans la vue en faisant un clic droit sur la valeur et en la mettant en forme comme souhaité.
Pour consulter les étapes présentées dans la vidéo ci-dessous, veuillez développer la section ci-dessus. Remarque : la vidéo n'a pas de son.
CLIQUER POUR DÉVELOPPER L'OPTION 3
Option 3 : Réorganiser la vue et utiliser ZN(LOOKUP())
Cette option remplace les données NULL, manquantes ou filtrées par des zéros.
Déplacez [Étape] depuis l'étagère Lignes vers l'étagère Colonnes
Sélectionnez Analyse > Créer un champ calculé
Dans la boîte de dialogue Champ calculé qui s'ouvre, procédez comme suit, puis cliquez sur OK :
Nommez le champ calculé. Dans cet exemple, le champ calculé est appelé « Remplacer les cellules vides par zéro (opt 3) »
Dans le champ de formule, créez un calcul du type suivant :
ZN(LOOKUP(SUM([Amount]),0))
Le calcul LOOKUP() recherche la valeur de la cellule actuelle (spécifiée par le second argument de LOOKUP() qui est un 0) dans la vue, si cette valeur est NULL, la fonction ZN() retourne zéro.
Notez que, pour que cette option fonctionne, il doit y avoir une cellule vide dans la vue étant donné que ce calcul n'ajoute pas de lignes/colonnes, et écrit seulement dans les cellules vides.Par exemple, si [Étape] se trouve sur Lignes, « Hibagon » aura une seule ligne d'étape. Lorsque [Étape] est déplacé vers Colonnes, « Hibagon » affiche trois colonnes d'étapes parce qu'au moins un autre projet dans la vue comporte chaque étape.
Créez un champ calculé appelé par exemple « Remplacer les cellules vides par la dernière valeur(opt 3) » avec un calcul du type suivant :
Remplacez [Quantité] dans Texte sur la fiche Repères par [Remplacer les cellules vides par zéro (opt 3)] ou [Remplacer les cellules vides par la dernière valeur (opt 3)] selon le résultat souhaité
(Facultatif) Personnalisez les valeurs dans la vue en faisant un clic droit sur la valeur et en la mettant en forme comme souhaité.
Pour consulter les étapes présentées dans la vidéo ci-dessous, veuillez développer la section ci-dessus. Remarque : la vidéo n'a pas de son.
CLIQUER POUR DÉVELOPPER L'OPTION 4
Option 4 : Lier les données d'origine à une liste principale de valeurs
Cette option affiche des zéros lorsque les données sont NULL, manquantes ou filtrées hors de la vue.
Créez un fichier texte contenant une liste principale de toutes les étapes.
Créez une jointure entre bases de données entre les données d'origine et la liste principale. Utilisez des calculs de jointure pour lier les tables sur 1 = 1
Les calculs de jointures sont une nouvelle fonctionnalité ajoutée dans Tableau Desktop 10.2. Pour les versions antérieures, il est nécessaire de créer des champs de jointure factices dans les sources de données sous-jacentes.
Pour plus d'informations sur les jointures entre bases de données ou les calculs de jointure, consultez Lier vos données.
Sélectionnez Analyse > Créer un champ calculé
Dans la boîte de dialogue Champ calculé qui s'ouvre, procédez comme suit, puis cliquez sur OK :
Nommez le champ calculé. Dans cet exemple, le champ calculé est appelé « Nouveau montant avec des zéros »
Dans le champ de formule, créez un calcul du type suivant :
ZN( IF [Stage] = [Stage (Stage Master List)]
THEN [Amount]
END )
La jointure crée des données en double, donc pour supprimer les doublons, nous souhaitons afficher uniquement les données où la dimension comportant des valeurs NULL ou manquantes correspond aux mêmes valeurs que dans la liste principale
La fonction ZN() remplace les valeurs NULL par un zéro.
Créez un champ calculé appelé par exemple « Nouveau montant avec la dernière valeur » comportant un calcul du type suivant :
IFNULL( SUM( IF [Stage] = [Stage (Stage Master List)] THEN [Amount] END), PREVIOUS_VALUE(0) )
IFNULL(..., PREVIOUS_VALUE(0)) remplace toutes les valeurs NULL par la dernière valeur de ce calcul, ce qui crée une dernière valeur cumulée.
Utilisez [Nouveau montant avec des zéros] ou [Nouveau montant avec la dernière valeur] en fonction du résultat final souhaité
(Facultatif) Personnalisez les valeurs dans la vue en faisant un clic droit sur la valeur et en la mettant en forme comme souhaité.
Pour consulter les étapes présentées dans la vidéo ci-dessous, veuillez développer la section ci-dessus. Remarque : la vidéo n'a pas de son.
CLIQUER POUR DÉVELOPPER L'OPTION 5
Option 5 : Ajouter les données manquantes à l'ensemble de données sous-jacentes
Modifiez la source de données d'origine à ajouter aux données manquantes.
Selon le cas d'utilisation, la meilleure solution peut consister à ajouter des enregistrements factices comportant des mesures NULL, puis à suivre les instructions décrites dans l'option 1 ci-dessus.
Informations supplémentaires
L'exemple de classeur joint utilise l'exemple d'ensemble de données Superstore pour démontrer les options ci-dessus. Toutes les instructions commencent par la feuille de calcul « Original ».
Voici les trois scénarios principaux susceptibles de créer des espaces vides qui devront être remplacés par des zéros :
Données NULL : se produit lorsque l'ensemble de données sous-jacentes contient des enregistrements mais que les valeurs de mesures sont NULL ou vides. Dans le classeur Excel joint, « NULL and Missing Examples.xlsx », le projet « Brosnya » affiche des valeurs NULL pour « En cours » et « Terminé ».
Données manquantes : se produit quand l'ensemble de données sous-jacentes ne comporte aucun enregistrement. Dans l'exemple de données, il manque « En cours » et « Terminé » dans le projet « Hibagon ».
Filtrer les données : Dans le classeur joint, le filtre [Date] filtre également « Démarré » et « En cours » pour le projet « Dalmatian ». Le projet « Dalmatian » comporte des enregistrements dans la source de données sous-jacentes pour chaque étape.
Toutes les options remplacent les données NULL par des zéros. Les Options 3, 4 et 5 remplacent les données manquantes par des zéros.Les Options 2, 3 et 4 remplacent les données filtrées par des zéros.
Il est éventuellement possible d'afficher des lignes/colonnes supplémentaires dans la vue avec l'option Analyse > Disposition de table > Afficher les lignes/colonnes vides. Par contre, aucune donnée ne peut être écrite sur ces lignes.
Si le tableau croisé ne comporte qu'une mesure, toutes les valeurs NULL peuvent être remplacées dans les options de mise en forme. Consultez Formater les valeurs Null
Merci de nous avoir donné votre avis sur l’efficacité de l’article.