Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

est la fonction DAX la plus couramment utilisée pour classer les informations dans LuckyTemplates. C'est une fonction simple, mais qui peut être frustrante et déroutante pour les débutants. Cependant, il s'agit d'une fonction très puissante qui pourrait fournir des informations précieuses pour vos rapports.

Dans cet article, vous connaîtrez les tenants et les aboutissants de la fonction RANKX DAX. Vous apprendrez quand et comment l'utiliser et vous verrez à quel point cette fonction est utile en explorant certains scénarios et exemples.

Table des matières

Définition et syntaxe de la fonction DAX RANKX

La fonction RANKX LuckyTemplates DAX renvoie le classement d'un certain nombre dans une liste de nombres pour chaque ligne de l'argument de table. Il peut être utilisé dans les calculs pour les colonnes calculées et les mesures calculées. Vous trouverez ci-dessous la syntaxe de la formule RANKX.

RANGX(
     , , , ,
)

Pour le paramètre table, vous pouvez saisir une table standard importée dans LuckyTemplates ou une table calculée via DAX. RANKX, en tant que fonction d'itération , parcourt ensuite cette table et classe un nombre spécifique. Cela dépend du nombre de valeurs dans la table. Par exemple, si la table a 20 valeurs, alors RANKX aura un résultat de classement de 1 à 20.

Une clé pour comprendre la fonction RANKX est qu'elle renvoie une valeur scalaire . Dans le paramètre expression, nous avons besoin d'une expression DAX qui renvoie une valeur scalaire. Cette expression boucle et parcourt chaque ligne du tableau, vous donnant les valeurs de classement en conséquence.

Les paramètres value et order sont facultatifs, tandis que le paramètre ties vous aide à déterminer le classement lorsqu'il existe des liens dans vos valeurs.

Concepts de formule RANKX et LuckyTemplates DAX

Il y a un certain nombre de concepts à bien comprendre pour s'assurer que les résultats de classement que vous attendez sont créés. J'aborderai le concept le plus important lors de l'exécution d'un calcul DAX, qui est le « contexte ». Une fois que vous avez compris cela, vous pouvez vraiment comprendre comment utiliser efficacement la fonction RANKX.

RANKX est une fonction DAX très unique qui nécessite un niveau de réflexion plus approfondi autour de sa logique et de son fonctionnement réel lors de l'exécution d'un calcul dans un contexte particulier (par exemple, un tableau ou un graphique dans LuckyTemplates).

Chaque paramètre différent de la fonction DAX RANKX peut modifier la manière dont il calcule un résultat. Il existe plusieurs paramètres que vous pouvez entrer dans cette fonction DAX pour comprendre comment chacun peut déterminer le résultat sous-jacent, qui est jugé important.

C'est pourquoi il est essentiel de comprendre les éléments et concepts clés du fonctionnement de RANKX dans divers contextes. Cela vous permettra d'être sûr que vos calculs sont corrects et que vos consommateurs consultent des informations qui ont réellement du sens.

Scénario RANKX DAX de base

Tout d'abord, examinons un simple calcul RANKX. Dans cet exemple, nous essayons d'  identifier le classement de ces produits en fonction des ventes  (cela peut également être basé sur n'importe quelle mesure) sur tous les différents produits que nous vendons.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Principalement, nous devons créer une table dans RANKX pour évaluer chaque produit en fonction de la mesure que nous avons spécifiée. La  fonction  peut être utilisée pour supprimer n'importe quel filtre de la  table Products  et pour évaluer chaque produit. 

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Mais, si nous supprimons le filtre (dans ce cas, la  fonction ALL  ) et utilisons simplement "Produits", le résultat sera différent. C'est pourquoi nous devons utiliser la fonction ALL pour obtenir le bon résultat. C'est ainsi que vous pouvez résoudre  des calculs RANKX simples  . 

Et si cela devenait plus complexe ? Que se passe-t-il si vous avez besoin de résultats de classement qui ne sont pas uniquement basés sur les ventes totales ? Eh bien, c'est là qu'il faut comprendre le contexte actuel de ce calcul. Nous devons savoir comment nous pouvons manipuler le contexte pour obtenir le résultat souhaité.

Scénario RANKX DAX complexe

Essayons d'introduire la formule similaire exacte (mesure du classement des produits) dans le tableau sur le côté droit.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Comme vous pouvez le voir, cela nous a donné un autre résultat erroné. La raison derrière cela est que nous avons également une colonne Nom du client ici. Si nous examinons à nouveau la formule, vous verrez qu'elle  ne répartit pas chaque client individuellement . Nous évaluons uniquement les produits pour chaque client spécifique.

Essayons de trier la  colonne Nom du client  .

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Même si nous trions la colonne Nom du client, le classement des produits changera toujours en fonction du classement du produit qu'ils ont acheté. Il y a beaucoup de nombres qui sont les mêmes. Un exemple est le rang 17. Dans ce cas, c'est peut-être parce que  ce client particulier n'a acheté que 17 produits .

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

C'est peut-être ce dont vous avez besoin dans ce scénario. Mais que se passe-t-il si vous avez besoin de quelque chose d'un peu plus complexe que cela ? Que se passe-t-il si vous avez besoin du classement de 1 à une valeur indéfinie des contextes Nom du client et Produit ?

Comme je l'ai souligné, il est important de  comprendre le contexte et comment nous manipulons le contexte  pour obtenir le résultat souhaité.

Dans notre exemple, nous avons deux dimensions qui proviennent de deux tables totalement différentes. Nous avons la  colonne Nom du client de la  table Clients et la colonne Nom du produit de la table Produits.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Nous devons en quelque sorte supprimer les filtres sur cette table virtuelle à l'intérieur de la logique RANKX des deux tables. Nous devons faire ce que nous avons fait dans la première table (côté gauche), mais nous devons le faire dans les colonnes Nom du client et Nom du produit dans les deux tables particulières.

Ensuite, nous obtiendrons éventuellement le classement correct via les ventes totales du nom du client et du nom du produit. Voici la formule que nous pouvons utiliser pour ce scénario distinct.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

La fonction nous permet de joindre deux colonnes ensemble, ou il pourrait également s'agir de deux tables. Cependant, dans ce cas, nous allons simplement joindre des colonnes.

Nous  supprimons tous les filtres  des tables Clients et Produits. Ensuite, nous allons parcourir chaque ligne de cette table virtuelle et évaluer ou identifier où se situe le classement particulier pour ce sous-ensemble particulier de nom de client et de nom de produit.

Exemple avancé de RANKX DAX

Comme vous pouvez le voir dans les exemples précédents, la fonction RANKX vous donne des informations précieuses lorsque vous l'utilisez pour une gamme de contextes différents sur votre page de rapport. Cependant, il peut également s'agir de l'une des fonctions les plus déroutantes à utiliser dans LuckyTemplates. Cela peut vous donner des résultats différents qui semblent être corrects, alors qu'en fait, ils sont faux. Si vous ne faites pas attention, vous finirez par devoir retravailler tout le rapport.

Vous avez besoin d'une solide compréhension du contexte, puis d'apprendre à utiliser RANKX dans ce contexte.

Je vais plonger dans la complexité de RANKX parfois. Je vais travailler sur un exemple afin que vous puissiez comprendre les nombreuses nuances de l'utilisation de cette fonction.

Dans la visualisation ci-dessous, nous avons le classement des comtés, le classement des États et le classement des régions des États.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

La gestion du contexte du calcul peut être difficile si vous souhaitez les voir tous dans une seule matrice. Regardons le tableau. Vous pouvez voir qu'il contient des informations sur les régions de l'État, l'État et le comté.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Pour cet exemple, vous devez établir le classement des comtés. Si vous n'avez que le comté, le classement du comté et les ventes totales dans le tableau, vous obtenez les résultats de classement corrects :

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Mais une fois que vous commencez à superposer les autres contextes dans le tableau, le résultat du classement commence à s'accumuler pour chaque comté qui se trouve dans différents États et régions d'État.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Vous devez donc identifier et modifier le contexte du calcul pour vous assurer d'obtenir le classement global correct pour chaque comté, quel que soit ce qui est sélectionné sur la page du rapport. Chaque fois que vous sélectionnez un État comme le Colorado, la formule est également mise à jour.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Vous pouvez également effectuer une sélection à l'aide des régions d'état. Si vous sélectionnez Nord-Est, le classement approprié s'affiche.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Dans cet exemple, deux formules sont utilisées pour obtenir le classement du comté. Cela vous aidera à comprendre la différence dans les résultats générés en utilisant différentes fonctions DAX avec RANKX :

Formule #1 : RANKX avec ALL et ALLSELECTED

La fonction ALL est la partie clé de cette formule pour County Rank :

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Il manipule le contexte dans la formule RANKX. Il parcourt ensuite la table Regions et crée le résultat du classement. Dans ce cas, la fonction ALL fonctionne virtuellement dans chaque comté, quel que soit le contexte initial.

Ce problème se complique lorsque vous commencez à superposer des contextes de segment. En utilisant , le classement sera automatiquement mis à jour en fonction de la sélection dans le slicer. Vous devez également utiliser pour placer un contexte supplémentaire sur un résultat ou pour modifier le contexte du calcul.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Le contexte est ajusté en fonction des filtres de la fonction CALCULATE. Avec cela, le classement s'ajustera en fonction du contexte provenant des trancheurs d'État et de région d'État.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Formule #2 : RANKX avec ALL et VALUES

Examinons maintenant la colonne County (Updated).

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Vous voulez vous assurer que cette colonne continuera d'afficher le classement global, quel que soit ce qui est sélectionné dans les segments. Chaque comté devrait avoir un numéro unique.

Voici la formule utilisée :

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Pour cet exemple, il n'y avait aucun moyen de déchiffrer un comté unique, donc une autre colonne a été créée. La colonne Comté complet comprend le comté, l'état et la région.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Cela vous donne une bonne distinction entre les comtés. De cette façon, vous pouvez maintenant travailler une table virtuelle des comtés qui sont dans les données. Avant de faire cela, vous devez supprimer le contexte ALL de la table Regions.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Ainsi, tout contexte provenant de la table de la région n'existe pas à ce stade. Avec la fonction , vous pouvez rajouter le contexte de la colonne Full County.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Une option consiste à référencer chaque colonne à l'aide de la fonction ALL, mais la meilleure alternative consiste à supprimer tout le contexte des régions et à ne ramener que le comté complet. Une fois que le contexte a été manipulé à l'intérieur de CALCULATE, la fonction RANKX commence son travail à partir de là.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

RANKX travaille dans chaque comté à chaque ligne avec leurs ventes totales, puis les classe. C'est ainsi que vous obtenez les valeurs de 1 à X sous la ligne County (Updated). Par conséquent, les filtres et les segments n'auront pas d'importance et n'affecteront pas le classement, car la formule a été définie pour les ignorer.

Autres exemples pratiques de RANKX Measure LuckyTemplates

Maintenant que vous avez appris les bases des concepts RANKX et LuckyTemplates DAX, explorons d'autres exemples d'utilisation de RANKX. Tout d'abord, parcourez un exemple où RANKX est utilisé pour trouver les valeurs supérieures et inférieures. L'exemple suivant présente RANKX comme un moyen de segmenter ou de regrouper les résultats.

Recherche des valeurs supérieures et inférieures à l'aide de RANKX

Une utilisation courante de RANKX est lorsque vous souhaitez connaître vos valeurs supérieures ou inférieures . Par exemple, si vous souhaitez trouver vos meilleurs clients ou vos produits les plus bas, vous pouvez utiliser RANKX avec d'autres fonctions DAX.

Dans ce premier exemple, je vais vous montrer comment combiner RANKX avec les fonctions CALCULATE et pour voir qui sont nos meilleurs clients, non seulement pour une période statique mais aussi dans le temps. Ensuite, nous le présenterons dans une matrice de vente de nos 10 principaux clients.

Lorsque nous mettons les mesures Quarter & Year  et  Total Sales  dans une matrice, nous obtenons tous les résultats. C'est formidable, mais il peut être très difficile d'avoir un aperçu et de repérer les tendances.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Nous voulons voir les tendances et déterminer qui sont nos 10 meilleurs clients pour cette période. Par exemple, avons-nous eu un client qui, pendant un certain temps, était l'un de nos meilleurs clients, mais qui s'est totalement désisté ? C'est le genre d'informations que nous recherchons.

Nous pouvons le faire en utilisant une seule formule. Voici la mesure que j'ai créée à l'aide de la fonction CALCULER pour calculer nos ventes totales pour les clients qui figurent dans le Top 10.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Nous devons utiliser la logique de classement  pour créer un indicateur de logique de classement qui dira que si ce client est dans le Top 10, renverra cette valeur Total Sales. En plus d'utiliser RANKX dans LuckyTemplates, nous allons également utiliser la fonction FILTER, puis utiliser VALUES, qui va créer une table interne pour chaque client.

Ensuite, nous devons réfléchir à la logique à écrire ici, quelque chose qui dit "si le rang actuel est inférieur ou égal à 10 égal au total des ventes sinon, égal à blanc". Ce qui est vraiment cool avec les instructions de filtrage comme celle-ci, c'est que vous pouvez écrire ce type de logique à l'intérieur.

Nous allons donc utiliser la fonction RANKX et TOUS les noms de clients car nous allons classer chaque client dans un contexte particulier. Le ALL se débarrasse de tout filtre sur les noms de clients afin que nous puissions compléter ce classement.

Nous allons ensuite classer par total des ventes et par ordre décroissant, puis nous irons inférieur ou égal à 10. c'est le cas, nous voulons qu'il soit égal au total des ventes, et sinon, qu'il reste vide.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Enfin, nous remplacerons nos ventes totales par nos 10 meilleurs clients. Nous pouvons voir les 10 meilleurs clients pour chaque période et implémenter une mise en forme conditionnelle pour l'améliorer visuellement. Nous pouvons également utiliser la mise en forme conditionnelle pour avoir des informations plus convaincantes.

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Si vous vendez à des clients de nombreuses fois, vous souhaiterez raccourcir le délai ; mais si c'est seulement vous qui vendez aux clients 2 ou 3 fois par an, alors vous voudrez analyser les choses à plus long terme.

Il existe une autre fonction DAX, appelée TOPN, qui est également utilisée pour classer les informations. Cependant, il y a toujours une grande . Gardez à l'esprit que TOPN est une fonction de table tandis que RANKX renvoie une valeur scalaire . La clé est de comprendre le contexte dans lequel vous placez ces fonctions.

Combinaison du regroupement dynamique à l'aide de LuckyTemplates RANKX

Une autre excellente façon d'utiliser RANKX est de segmenter ou de regrouper les résultats plutôt que de simplement montrer les résultats par eux-mêmes sans aucun contexte.

Dans cet exemple, au lieu de simplement montrer un résultat de vente générique, je veux voir si un client figurait dans les résultats les mieux classés, puis voir s'il change au fil du temps. Je veux comprendre quelle part de nos ventes provient de nos 5 meilleurs clients, des 5 à 20 premiers, puis du reste de nos clients.

Pour voir s'il y a une tendance, nous devons créer des groupes dynamiques et les évaluer au fil du temps. C'est très difficile à faire, surtout si vous travaillez à partir d'Excel. Mais si vous comprenez très bien DAX, vous pouvez écrire une formule qui ne vous prend pas beaucoup de temps à écrire, puis cela devient un modèle que vous pouvez utiliser encore et encore.

Voici la mesure que j'ai créée pour ce scénario :

Fonction RANKX DAX dans LuckyTemplates : un aperçu complet

Nous commençons avec la fonction CALCULATE car rien ne se passe sans CALCULATE. Ensuite, nous ajoutons Total Sales parce que c'est ce que nous résumons.

Ensuite, nous devons filtrer sur une table de noms de clients qui parcourra chaque client, évaluer son classement, puis voir si son classement est supérieur ou inférieur au MIN et MAX que nous venons de créer.

L'étape suivante consiste à utiliser à nouveau la fonction et la fonction FILTER. Ensuite, choisissez Customer Groups, qui est la table que j'ai créée.

Ensuite, nous allons parcourir cette table en utilisant RANKX. Nous calculons les ventes totales en haut, mais le tableau des groupes de clients est en fait le classement. Nous devons obtenir le classement de chacun de ces clients individuels, puis voir s'ils appartiennent à l'un des groupes figurant dans le tableau Groupes de clients.

Nous les classerons ensuite par total des ventes, puis choisirons DESC pour les classer en 1 pour le plus élevé et 200 pour le plus bas. Nous le clôturerons alors avec un supérieur au pour les clients les mieux classés. Enfin, nous utiliserons RANKX avec la logique similaire que nous avons utilisée ci-dessus, mais avec inférieur ou égal à .

Vous pouvez utiliser ce encore et encore dans de nombreux scénarios applicables. RANKX vous permet de créer des tableaux de classement dynamiques , vous donnant des informations de classement incroyables.

Conclusion

RANKX est une fonction simple, mais pas facile à utiliser. La clé est de se concentrer sur ses nuances pour pouvoir mieux comprendre la fonction. Il existe de nombreuses façons d'utiliser la fonction RANKX dans les calculs DAX, en particulier lorsqu'elle est combinée à différentes fonctions. Vous serez étonné de voir à quel point cette fonction peut être flexible dans LuckyTemplates.

Les exemples que je vous ai montrés dans ce blog sont certainement les meilleurs moyens de démontrer RANKX, en particulier en ce qui concerne sa polyvalence dans le calcul de toute analyse de type classement. Il peut être utilisé dans un certain nombre de scénarios différents.

La clé à retenir ici est que vous devez vraiment comprendre le contexte dans lequel votre fonction RANKX est placée.

J'espère que vous trouverez ce contenu utile et que vous l'utiliserez dans votre propre environnement de travail.

Acclamations!


Quest-ce que le self en Python ? Exemples concrets

Quest-ce que le self en Python ? Exemples concrets

Qu'est-ce que le self en Python ? Exemples concrets

Comment enregistrer et charger un fichier RDS dans R

Comment enregistrer et charger un fichier RDS dans R

Vous apprendrez à enregistrer et à charger des objets à partir d'un fichier .rds dans R. Ce blog expliquera également comment importer des objets de R vers LuckyTemplates.

First N Business Days Revisited - Une solution de langage de codage DAX

First N Business Days Revisited - Une solution de langage de codage DAX

Dans ce didacticiel sur le langage de codage DAX, découvrez comment utiliser la fonction GENERATE et comment modifier dynamiquement le titre d'une mesure.

Présentez des informations à laide de la technique des visuels dynamiques multi-threads dans LuckyTemplates

Présentez des informations à laide de la technique des visuels dynamiques multi-threads dans LuckyTemplates

Ce didacticiel explique comment utiliser la technique Multi Threaded Dynamic Visuals pour créer des informations à partir de visualisations de données dynamiques dans vos rapports.

Introduction au filtrage du contexte dans LuckyTemplates

Introduction au filtrage du contexte dans LuckyTemplates

Dans cet article, je vais parcourir le contexte du filtre. Le contexte de filtrage est l'un des principaux sujets que tout utilisateur de LuckyTemplates doit d'abord connaître.

Meilleurs conseils pour utiliser les applications dans le service en ligne LuckyTemplates

Meilleurs conseils pour utiliser les applications dans le service en ligne LuckyTemplates

Je souhaite montrer comment le service en ligne LuckyTemplates Apps peut aider à gérer différents rapports et informations générés à partir de diverses sources.

Analyser les changements de marge bénéficiaire au fil du temps - Analytics avec LuckyTemplates et DAX

Analyser les changements de marge bénéficiaire au fil du temps - Analytics avec LuckyTemplates et DAX

Découvrez comment calculer les modifications de votre marge bénéficiaire à l'aide de techniques telles que la création de branches de mesure et la combinaison de formules DAX dans LuckyTemplates.

Idées de matérialisation pour les caches de données dans DAX Studio

Idées de matérialisation pour les caches de données dans DAX Studio

Ce didacticiel abordera les idées de matérialisation des caches de données et comment elles affectent les performances des DAX dans la fourniture de résultats.

Rapports dentreprise à laide de LuckyTemplates

Rapports dentreprise à laide de LuckyTemplates

Si vous utilisez encore Excel jusqu'à présent, c'est le meilleur moment pour commencer à utiliser LuckyTemplates pour vos besoins en matière de rapports commerciaux.

Quest-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir

Quest-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir

Qu'est-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir