IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Power BI Discussion :

Calculer la Moving Range


Sujet :

Power BI

  1. #1
    Membre à l'essai
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Décembre 2022
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2022
    Messages : 4
    Par défaut Calculer la Moving Range
    Bonjour à tous,

    J'aimerais calculer la Moving range comme montrer sur la photo, seulement cela ne marche pas j'ai essayé tous les calculs que j'ai pu voir sur internet mais tous le font à partir d'une date.

    Alors que moi je veux le faire entre différents groupe qui ont tous un numéro unique.

    Par exemple dans l'image, la premiere valeur de la colonne Moving Range devrait être nul puisque c'est la première mais ensuite cela devrait être : 4,92 - 4,76 = 0.16 pour la deuxieme ligne de la colonne Moving Range.

    Etc ... similaire à un moving range classique sur Excel.

    Pouvez vous m'aider ?
    Nom : Capture d’écran 2023-01-11 145702.png
Affichages : 168
Taille : 17,0 Ko

  2. #2
    Membre à l'essai
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Décembre 2022
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2022
    Messages : 4
    Par défaut
    Aucune réponse ?

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2023
    Messages : 9
    Par défaut
    Bonjour

    Une solution consiste à ajouter 2 colonnes d'index, l'une commençant à 0, l'autre à 1
    Fusionner la requête avec elle-même, sur le champ index.0 pour l'une et l'index.1 pour l'autre
    Développer la table pour en extrait la colonne "data"
    Calculer la différence entre les 2 colonnes data
    Supprimer les colonnes devenues inutiles

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    let
        Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
        #"Type modifié" = Table.TransformColumnTypes(Source,{{"Groupe", Int64.Type}, {"data", type number}}),
        #"Index ajouté" = Table.AddIndexColumn(#"Type modifié", "Index", 1, 1, Int64.Type),
        #"Index ajouté1" = Table.AddIndexColumn(#"Index ajouté", "Index.1", 0, 1, Int64.Type),
        #"Requêtes fusionnées1" = Table.NestedJoin(#"Index ajouté1", {"Index.1"}, #"Index ajouté1", {"Index"}, "Index ajouté1", JoinKind.LeftOuter),
        #"Index ajouté1 développé" = Table.ExpandTableColumn(#"Requêtes fusionnées1", "Index ajouté1", {"data"}, {"Index ajouté1.data"}),
        #"Lignes triées" = Table.Sort(#"Index ajouté1 développé",{{"Index", Order.Ascending}}),
        #"Personnalisée ajoutée" = Table.AddColumn(#"Lignes triées", "Moving Range", each [Index ajouté1.data]-[data]),
        #"Colonnes supprimées1" = Table.RemoveColumns(#"Personnalisée ajoutée",{"Index", "Index.1", "Index ajouté1.data"}),
        #"Type modifié1" = Table.TransformColumnTypes(#"Colonnes supprimées1",{{"Moving Range", type number}}),
        Arrondi = Table.TransformColumns(#"Type modifié1",{{"Moving Range", each Number.Round(_, 2), type number}})
    in
        Arrondi
    Cordialement

  4. #4
    Membre chevronné
    Homme Profil pro
    Ctrl Gestion
    Inscrit en
    Octobre 2011
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ctrl Gestion
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2011
    Messages : 179
    Par défaut
    Bonjour pubzyker, le Forum,

    Autre possibilité avec là aussi ajout d'une colonne Index

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    let
        Source = Excel.CurrentWorkbook(){[Name="tabData"]}[Content],
        ModificationTypeDonnees = Table.TransformColumnTypes(Source,{{"Numéro Groupe", Int64.Type}, {"Data", type number}}),
        AjoutIndexColonne = Table.AddIndexColumn(ModificationTypeDonnees, "Index", 0, 1, Int64.Type),
        CalculEcart = Table.AddColumn(AjoutIndexColonne, "Ecart", each try AjoutIndexColonne[Data]{[Index]-1} - [Data] otherwise null),
        SuppressionColonnes = Table.RemoveColumns(CalculEcart,{"Index"})    
    in
        SuppressionColonnes
    Cordialement
    DabixDB

  5. #5
    Membre éclairé
    Inscrit en
    Janvier 2003
    Messages
    604
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 604
    Par défaut
    Bonjour, je reviens sur ce sujet, il est possible aussi en Dax d'obtenir un décalage entre deux colonne et de calculer la différence.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Measure = CALCULATE(max('Table'[ColonnePourEffectuerUnCalcul]), FILTER(ALL('Table'), 'Table'[Value] = EARLIER('Table'[Value]) - 1))
    Nom : Decallage.png
Affichages : 104
Taille : 29,0 Ko

Discussions similaires

  1. Calculer tous les rangs d'une table
    Par huître dans le forum Macro
    Réponses: 10
    Dernier message: 06/08/2020, 11h52
  2. [SQL Server] problème de classement, calcul d'un rang
    Par lepeule dans le forum Langage SQL
    Réponses: 12
    Dernier message: 22/10/2019, 10h31
  3. Calcul d'un rang dans une requête
    Par rossy dans le forum Access
    Réponses: 7
    Dernier message: 26/07/2018, 19h17
  4. Calcul sur le Range
    Par ghosty177 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/01/2011, 12h24
  5. calcul d'un rang, problème de classement
    Par lepeule dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 07/06/2006, 08h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo