Moyenne Mobile Intelligente / Données Manquantes

Bonjour,

Je souhaite calculer la moyenne mobile sur 5 jours ouvrés des mes valeurs en colonne B, afin de la tracer en fonction de la date en colonne A. (valeurs inscrites dans un tableau). cf exemple ci dessous :

exemple

Les données sont présentées dans un ordre chronologique inverse, c'est-à-dire du plus récent (en haut) au plus ancien (en bas). Pour calculer la moyenne mobile sur 5 jours ouvrés, il est nécessaire de considérer les 5 dernières valeurs disponibles dans cet ordre, ce qui peut compliquer la sélection des données pertinentes.
Nous sommes généralement fermés les week-ends et les jours fériés, ce qui signifie qu'il n'y a pas de données pour ces jours. Par exemple, dans l'image :
• Le 25/12/2024 (Noël) n'a pas de valeur.
• Le 01/01/2025 (Jour de l'An) n'a pas de valeur.
Cela implique que pour calculer la moyenne mobile sur 5 jour ouvré, il faut ignorer ces jours sans données et sélectionner les 5 valeurs disponibles les plus récentes.
Il peut arriver que certaines données soient manquantes pour d'autres raisons
Pour pallier ce problème, il est nécessaire d'identifier les périodes avec des données manquantes et de les exclure du calcul, tout en veillant à toujours utiliser 5 valeurs consécutives disponibles.
Pour calculer la moyenne mobile sur 5 jours ouvrés à partir de l'exemple :
• Si l'on souhaite calculer la moyenne mobile pour le 03/01/2025, il faut remonter jusqu'au 27/12/2024 (en excluant les week-ends, jours fériés et données manquantes).
• Les valeurs à considérer seraient donc : 0,999 (03/01/2025), 1,000 (02/01/2025), 0,997 (31/12/2024), 0,997 (30/12/2024), et 1,000 (27/12/2024).
Ainsi la moyenne mobile = (0,999+1,000+0,997+0,997+1,000) / 5 = 0,9986

A ce jour, je n’ai pas trouvé de formule Excel me permettant de réaliser cela proprement.

Vous remerciant par avance pour votre aide !

Thomas

Bonjour,

Avec des données en colonne B, une possibilité :

=MOYENNE(PRENDRE(FILTRE(B2:B100;B2:B100<>"");5))
Autant pour moi ! J'ai Excel 2021 et la fonction PRENDRE est indisponible...

A vrai dire j'avais déjà pensé à la formule suivante :

=MOYENNE(INDEX(B3:B3960; EQUIV(VRAI(); INDEX((B3:B3960<>""); 0); 0)):INDEX(B3:B3960; EQUIV(VRAI(); INDEX((B3:B3960<>""); 0); 0) + 4))

Mais elle ne gère pas les éventuelles données manquantes, de plus elle calcule la moyenne mobile également les jours où il n'y a pas de valeurs ce qui ajoute des points faux sur mon graphe...

Merci tout de même du retour !

Re,

Alors essayez ceci :

=MOYENNE(INDEX(FILTRE(B2:B100;B2:B100<>"");SEQUENCE((5))))

Bonjour à tous,

PRENDRE n'est pas dispo sur 2021 malheureusement.

Pour y pallier, on peut utiliser INDEX avec SEQUENCE :

=MOYENNE(INDEX(FILTRE(B2:B100;B2:B100<>""); SEQUENCE(5)))

Attention : il faut que le tableau de base soit trié

Pour prendre en compte un jour particulier comme jour de départ on peut l'ajouter dans le filtre :

=MOYENNE(INDEX(FILTRE(B2:B100; (B2:B100<>"")*(A2:A100>DATE(2025;03;01))); SEQUENCE(5)))

Enfin, personnellement je retrierai le tableau, donc

=MOYENNE(
    INDEX(
      LET(
        tbl; FILTRE(A2:B100; (B2:B100 <> "") * (A2:A100 >= DATE(2025; 3; 1)); 0);
        TRIER.PAR(INDEX(tbl; ; 2); INDEX(tbl; ; 1); -1)
      )
      SEQUENCE(5)
    )
)

EDIT : Salut @BeGood nos derniers messages se sont croisés

Bonjour à tous !

Une proposition ?

Bonjour à tous,

Merci pour vos retours

C'est exactement ce qu'il me fallait JFL, merci beaucoup !

Bonne journée,

Thomas

Bonjour à tous !

Bien....

Je vous remercie de ce retour.

Rechercher des sujets similaires à "moyenne mobile intelligente donnees manquantes"