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 :

Suppression boucle for


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de tubaas
    Homme Profil pro
    Acousticien
    Inscrit en
    Août 2009
    Messages
    641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Acousticien
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2009
    Messages : 641
    Par défaut Suppression boucle for
    bonjour
    je souhaiterais supprimer la boucle suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    for i=1:length(DataIn)
    DataOut(:,i)=sqrt(i)*DataIn(:,i)
    end
    le problème est que je me sers de l'indice.
    merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317

  3. #3
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Par défaut
    Bonjour,

    Un solution doit être d'utiliser ARRAYFUN:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    DataOut = repmat(arrayfun(@sqrt,[1:length(DataIn)]),size(DataIn,1),1) .* DataIn;
    A valider...

    Bonne journée,
    Duf

  4. #4
    Membre émérite Avatar de tubaas
    Homme Profil pro
    Acousticien
    Inscrit en
    Août 2009
    Messages
    641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Acousticien
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2009
    Messages : 641
    Par défaut
    merci
    nul besoin de ARRAYFUN puisque
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    DataOut=repmat(sqrt(1:length(DataIn)),size(DataIn,1),1).*DataIn;
    marche très bien.
    cela réduit déjà beaucoup le temps de calcul (de presque 8s à environ 0.6s) pour le eptit cas particulier sur lequel je l'ai testé.
    je verrai si je peux encore l'optimiser en regardant toutes les solutions proposées.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Boucle For - Suppression colonne - Erreur '13'
    Par arkhang dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/06/2014, 12h03
  2. [XL-2003] VBA problème avec la une boucle for range.end(xlup).row après suppression de lignes
    Par JohnNC115 dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 25/01/2011, 10h21
  3. suppression boucle for
    Par tubaas dans le forum MATLAB
    Réponses: 4
    Dernier message: 01/12/2009, 12h17
  4. [Swing][boucles] for, do, if .....comment faire simple?
    Par chastel dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 02/05/2004, 22h49
  5. [langage] boucle "for" modification du pas
    Par K-ZimiR dans le forum Langage
    Réponses: 4
    Dernier message: 29/04/2004, 11h54

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