Loading

Calcul d'un classement à un niveau autre que le niveau de granularité le plus élevé

Date de publication: Jul 20, 2023
Description
Comment calculer un classement pour une dimension de l'étagère Lignes qui n'est pas la dernière dimension.

Cause

Les calculs de table tels que RANK() et INDEX() ne peuvent pas ignorer un champ dans la vue et seront donc toujours affectés par le plus faible niveau de granularité dans la vue. À l'aide d'une expression LOD permettant d'agréger les valeurs utilisées pour créer le classement jusqu'au niveau souhaité, Tableau Desktop calcule le même classement pour tout élément au sein du niveau souhaité.

Remarque : dans l'Option 1, si deux sous-catégories ont la même valeur SUM(Sales), le même classement leur sera attribué. S'il ne s'agit pas du comportement souhaité, veuillez utiliser l'option 2.
Résolution
Vous pouvez consulter ces deux options dans le classeur joint.

Option 1 : Utiliser RANK()

  1. Créez un champ calculé appelé par exemple « Ventes par sous-catégorie » en utilisant un calcul du type suivant :
    { EXCLUDE [State] : SUM( [Sales] ) }
  2. Créez un champ calculé appelé par exemple « RANK_DENSE + LOD » avec un calcul du type suivant :
    RANK_DENSE( SUM( [Sales per Sub-Category] ) )
  3. Faites glisser [RANK_DENSE + LOD] vers la fiche Valeurs de mesures.
  4. Faites un clic droit sur [RANK_DENSE + LOD] et sélectionnez Modifier le calcul de table…
  5. Dans la boîte de dialogue Calcul de table, effectuez la procédure suivante et fermez la boîte de dialogue :
    1. Sélectionnez Dimensions spécifiques
    2. Vérifiez toutes les dimensions dans la liste
    3. Assurez-vous que Région constitue la première dimension dans la liste
    4. Pour Recommence tou(te)s les, sélectionnez Région dans la liste déroulante

Option 2 : Utiliser INDEX()

  1. Créez un champ calculé appelé par exemple « Ventes par sous-catégorie » en utilisant un calcul du type suivant :
    { EXCLUDE [State] : SUM( [Sales] ) }
  2. Créez un champ calculé appelé par exemple « INDEX » avec un calcul du type suivant :
    INDEX()
  3. Faites glisser [INDEX] vers la fiche Valeurs de mesures.
  4. Faites un clic droit sur [INDEX] et sélectionnez Modifier le calcul de table…
  5. Dans la boîte de dialogue Calcul de table, effectuez la procédure suivante et fermez la boîte de dialogue :
    1. Sélectionnez Dimensions spécifiques
    2. Vérifiez toutes les dimensions dans la liste
    3. Assurez-vous que Région constitue la première dimension dans la liste
    4. Assurez-vous que Sous-catégorie constitue la seconde dimension dans la liste
    5. Pour Recommence tou(te)s les, sélectionnez Région dans la liste déroulante
    6. Cliquez sur Tri automatique pour ouvrir le menu déroulant Trier
    7. Sélectionnez Personnalisé, Ventes par sous-catégorie, Somme, Décroissant
Remarque : la dimension supérieure doit toujours être la partition dans laquelle nous calculons le classement, et la seconde dimension doit toujours être la dimension pour laquelle nous souhaitons calculer le classement. Par exemple, je souhaite classer chaque sous-catégorie au sein de chaque région.
 
Ressources supplémentaires

Numéro d’article de la base de connaissances

001473147

Pièces jointes

Rank of 2nd lowest dimension.twbx

1223 KB

 
Chargement
Salesforce Help | Article