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

MATLAB Discussion :

faire une moyenne glissante


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2018
    Messages : 11
    Points : 7
    Points
    7
    Par défaut faire une moyenne glissante
    Bonjour à toutes et à tous

    pourriez vous m'aider à écrire la moyenne glissante d'un vecteur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mean =[ 0+1/100;   i+(i+1)/100;   (i+1)+(i+2)/100 ;   (i+(n-1))+(i+n)/100]

    j'ai un vecteur de 10000 valeur, je voudrais le réduire en faisant la moyenne d'un pas de 100

  2. #2
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 881
    Points : 3 429
    Points
    3 429
    Par défaut
    salut

    essayes qqch comme ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    % on met le vecteur en colonne au cas ou
    v = v(:); 
     
     % initialisation du résultat
    v_moyG = nan(numel(v)-100,1);
     
    % remplissage du vecteur résultat
    for idx = 1:100
      v_moyG = v_moyG + v(idx:end-100+idx);
    end
    v_moyG = v_moyG /100;
    avec v ton vecteur de 1000 elements et v_moyG le vecteur obtenu par moyenne glissante sur 100 éléments

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2018
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Bonjour,
    je vous remercie pour votre aide
    je n'ai pas compris l'utilité de la ligne 5
    et aussi il me fait une erreur pour end sur la ligne 9

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2018
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Bonjour,
    j'ai essayé avec ce code mais ça n'a rien donné
    je suis nouveau dans matlab et programmation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    k=100;
    b= v(1:end,1);
    for i = 1: size (v) /100
        b= mean(v) 
    end

  5. #5
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 881
    Points : 3 429
    Points
    3 429
    Par défaut
    bon, je n'avais pas testé et en effet ca ne marchait pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    v = v(:);
    v_moyG = zeros(numel(v)-100+1,1);
    for idx = 1:100
    v_moyG = v_moyG + v(idx:end-100+idx);
    end
    v_moyG = v_moyG /100;
    le ligne 5 (2 dans le nouveau code) sert à initialiser le vecteur résultats
    mais fallait pas mettre des nan

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2018
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2018
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    je vous remercie infiniment

Discussions similaires

  1. Comment faire une moyenne avec une base de données liée ?
    Par BXDSPORT dans le forum Bases de données
    Réponses: 3
    Dernier message: 12/11/2007, 20h43
  2. [SQL] faire une moyenne : PHP ou SQL ?
    Par [Hugo] dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 17/10/2007, 19h30
  3. Faire une moyenne en ignorant les valeurs nulles
    Par Giansolo dans le forum MATLAB
    Réponses: 2
    Dernier message: 08/06/2007, 14h38
  4. [VBA-E]Excel / Faire une moyenne après un tri
    Par marcobosio dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/03/2007, 20h54
  5. Faire une moyenne en excluant les 0
    Par Lag dans le forum Access
    Réponses: 12
    Dernier message: 06/09/2005, 18h25

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