Utilisation des instructions OVER dans les colonnes calculées

Vous pouvez effectuer des calculs sur vos données et afficher les résultats sous la forme de valeurs dans une nouvelle colonne ajoutée à la table de données. Vous pouvez utiliser une instruction OVER dans l'expression utilisée pour le calcul. Cependant, l'utilisation de l'instruction OVER dans les colonnes calculées est différente de l'utilisation des expressions personnalisées. Dans les colonnes calculées, l'expression OVER est utilisée pour calculer des valeurs distinctes et fixes pour différents groupes. L'expression OVER peut entraîner la répartition des données en un nombre inférieur d'enregistrements.

Remarque : Les colonnes calculées sont toujours calculées sur toutes les valeurs de la colonne, peu importe la façon dont vous filtrez vos données.

Lorsque vous utilisez des colonnes calculées, aucun axe n'est disponible pour naviguer, comme c'est le cas pour les expressions personnalisées. Utilisez plutôt l'expression OVER pour faire référence à une colonne de données (ou une hiérarchie).

Dans la table de données ci-dessous, l'expression

Sum([Sales]) OVER ([Fruit])

est utilisée pour le calcul des valeurs dans la colonne ajoutée :



Ainsi, pour chaque ligne, la somme totale des ventes pour le type de fruit en question est présentée dans la nouvelle colonne. Par exemple, puisque le total des ventes de pommes est de 200 (30+70+100), cette valeur s'affiche désormais sur chaque ligne « Apples ». Cela a pour effet de répartir les données en un nombre inférieur de valeurs (200 et 100).
Remarque : Les nouvelles valeurs de colonne ne seront pas modifiées lorsque les données seront à nouveau filtrées par la suite. Par exemple, si la ligne de données du haut est filtrée, les valeurs de la colonne calculées pour les lignes « Apples » seront toujours de 200.

Exemple étendu

La colonne calculée ayant le moins d'enregistrements peut ne pas être très utile en tant que colonne autonome. Ajoutons cependant une autre colonne, dans laquelle l'expression précédente fait partie de l'expression utilisée :

[Sales] / (Sum([Sales]) OVER ([Fruit]))



Cette expression calcule la contribution relative de chaque transaction de vente pour le nombre total de ventes au cours des années pour ce type de fruit. Par exemple, 15 % (30/200) des ventes totales de pommes se sont produites en 2015, 35 % (70/200) en 2016 et les 50 % restants (100/200) en 2017.

Dans l'histogramme ci-dessous, la colonne calculée est sélectionnée sur l'axe Valeur à l'aide de l'agrégation Sum.



Au final, ce résultat est le même qu'en utilisant l'option Barres empilées à 100 % dans un histogramme affichant la valeur Sum([Sales]).

Combinaison de l'instruction OVER avec une méthode de navigation de nœud dans une colonne calculée

Dans l'expression utilisée pour calculer une colonne, vous pouvez utiliser l'instruction OVER en combinaison avec une méthode de navigation de nœud. Cet exemple simple vous donne une idée de l’utilisation de l’une des méthodes, Previous().

La table de données comprend le poids d'un nouveau-né mesuré chaque semaine, visualisé dans une courbe de tendance.





Supposons que vous soyez intéressé par la croissance hebdomadaire. Ceci peut être calculé au moyen de l'expression :

[Weight (g)] - Sum([Weight (g)]) OVER (Previous([Week]))

Les résultats peuvent être visualisés dans la table de données et l'histogramme ci-dessous.