Accéder au contenu principal

Analyse d'ensembles

Lorsque vous effectuez une sélection dans une application, vous définissez un sous-ensemble d'enregistrements dans les données. Les fonctions d'agrégation telles que Sum(), Max(), Min(), Avg() et Count() sont calculées en fonction de ce sous-ensemble.

En d'autres termes, votre sélection définit l'étendue de l'agrégation ; elle définit l'ensemble des enregistrements sur lesquels les calculs sont effectués.

L'analyse d'ensembles est une manière de définir une étendue différente de l'ensemble d'enregistrements défini par la sélection active. Cette nouvelle étendue peut également être considérée comme une sélection alternative.

Cela peut s'avérer utile si vous souhaitez comparer la sélection active à une valeur donnée, par exemple, à la valeur de l'an dernier ou à la part de marché mondiale.

Expressions d'ensemble

Les expressions d'ensemble sont utilisées à l'intérieur des fonctions d'agrégation et encadrées par des accolades. Par exemple :

Sum( {$<Year={2021}>} Sales )

Une expression d'ensemble se compose d'une combinaison des éléments suivants :

  • Identificateurs. Un identificateur d'ensemble représente une sélection, définie ailleurs. Il représente également un ensemble spécifique d'enregistrements dans les données. Il peut s'agir de la sélection active, d'une sélection d'un favori ou d'une sélection d'un état alternatif. Une expression d'ensemble simple se compose d'un seul identificateur, par exemple le signe dollar, {$}, qui signifie tous les enregistrements de la sélection active.

    Exemples : $, 1, BookMark1, State2

    Voir : Identificateurs d'ensemble

  • Opérateurs. Un opérateur d'ensemble peut être utilisé pour créer des unions, des différences ou des intersections entre différents identificateurs d'ensemble. Vous pouvez ainsi créer un sous-ensemble ou un super-ensemble des sélections définies par les identificateurs d'ensemble.

    Exemples : +, -, *, /

    Voir : Opérateurs d'ensemble

  • Modificateurs. Un modificateur d'ensemble peut être ajouté à l'identificateur d'ensemble pour modifier sa sélection. Un modificateur peut également être utilisé indépendamment ; il modifiera alors l'identificateur par défaut. Un modificateur doit être encadré par des crochets angulaires <…>.

    Exemples : <Year={2020}>, <Supplier={ACME}>

    Voir : Modificateurs d'ensemble

Les éléments sont combinés pour former des expressions d'ensemble.

Éléments d'une expression d'ensemble

Éléments d'une expression d'ensemble.

Cette expression d'ensemble est créée à partir de l'agrégation Sum(Sales).

Le premier opérande renvoie sales pour l'année  2021 pour la sélection active, tel qu'indiqué par l'identificateur d'ensemble $ et le modificateur d'ensemble contenant la sélection de l'année 2021. Le deuxième opérande renvoie Sales pour Sweden et ignore la sélection active, tel qu'indiqué par l'identificateur d'ensemble1.

Pour finir, l'expression renvoie un ensemble composé des enregistrements qui appartiennent à l'un des deux opérandes d'ensemble, tel qu'indiqué par l'opérateur d'ensemble +.

Pour une description de la syntaxe complète, voir Syntaxe des expressions d'ensemble.

Exemples

Des exemples combinant des éléments d'expression d'ensemble ci-dessus sont disponibles dans les rubriques suivantes :

Ensembles naturels

En règle générale, une expression d'ensemble représente un ensemble d'enregistrements du modèle de données et une sélection qui définit ce sous-ensemble de données. Dans ce cas, l'ensemble est appelé ensemble naturel.

Les identificateurs d'ensemble, avec ou sans modificateurs d'ensemble, représentent toujours des ensembles naturels.

Cependant, une expression d'ensemble qui utilise des opérateurs d'ensemble représente également un sous-ensemble des enregistrements, mais ne peut généralement tout de même pas être décrite via une sélection de valeurs de champ. Une telle expression est un ensemble non naturel.

Par exemple, l'ensemble fourni par {1-$} ne peut pas toujours être défini par une sélection. Il ne s'agit donc pas d'un ensemble naturel. Cela peut être mis en évidence en chargeant les données suivantes, en les ajoutant à une table, puis en effectuant des sélectons via des volets de filtre.

Load * Inline [Dim1, Dim2, Number A, X, 1 A, Y, 1 B, X, 1 B, Y, 1];		 

Si vous effectuez des sélections pour Dim1 et pour Dim2, vous obtenez la vue indiquée dans le tableau suivant.

Tableau avec des ensembles naturels et non naturels

Tableau avec des ensembles naturels et non naturels.

L'expression d'ensemble de la première mesure utilise un ensemble naturel : elle correspond à la sélection effectuée par {$}.

La deuxième mesure est différente. Elle utilise {1-$}. Il n'est pas possible d'effectuer une sélection correspondant à cet ensemble ; il s'agit donc d'un ensemble non naturel.

Cette distinction entraîne un certain nombre de conséquences :

  • Les modificateurs d'ensemble peuvent être appliqués uniquement à des identificateurs d'ensemble. Ils ne peuvent pas être appliqués à une expression d'ensemble arbitraire. Par exemple, il n'est pas possible d'utiliser une expression d'ensemble telle que : 

    { (BM01 * BM02) <Field={x,y}> }

    Ici, les parenthèses (rondes) normales impliquent l'évaluation de l'intersection entre BM01 et BM02 avant l'application du modificateur d'ensemble. Cela est dû au fait qu'il n'existe aucun ensemble d'éléments susceptible d'être modifié.

  • Vous ne pouvez pas utiliser des ensembles non naturels à l'intérieur des fonctions d'élément P() et E(). Ces fonctions renvoient un ensemble d'éléments, mais il n'est pas possible de déduire l'ensemble d'éléments d'un ensemble non naturel.

  • Une mesure utilisant un ensemble non naturel ne peut pas toujours être attribuée à la valeur dimensionnelle appropriée si le modèle de données contient de nombreuses tables. Par exemple, dans le graphique suivant, certains chiffres des ventes exclus sont attribués à la valeur Country correcte, tandis que d'autres ont la valeur NULL pour Country.

    Graphique avec un ensemble non naturel

    Tableau avec un ensemble non naturel.

    Le fait que l'affectation soit effectuée correctement ou non dépend du modèle de données. Dans ce cas, le chiffre ne peut pas être affecté s'il correspond à un pays exclu de la sélection.