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 regression ?


Sujet :

MATLAB

  1. #1
    Membre régulier Avatar de thtghgh
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 221
    Points : 88
    Points
    88
    Par défaut Faire une regression ?
    Bonjour,

    Je chercher à faire une regression (+ que linéaire) d'une courbe que j'obtiens suite à une étude sur la rapidité de convergence des méthodes de Jacobi et Gauss Seidel.

    En gros j'obtiens une courbe, et j'aimerais savoir à quel fonction connue on peut la comparer (du style : exponentielle, x², x^3)

    Je sais qu'il existe des outils d'interpolation, mais mon projet étant deja assez long, je cherche un moyen rapide de trouver une regression de ma courbe.


    Voici une des courbes que j'ai (qui correspond à la taille d'une matrice en mémoire fonction de sa dimension pour un stockage skyline) :
    ----------------------------------------------------
    ----------------------------------------------------

  2. #2
    Membre extrêmement actif
    Avatar de mihaispr
    Inscrit en
    Décembre 2008
    Messages
    1 025
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 025
    Points : 858
    Points
    858
    Par défaut
    Tu peux nous donner des information suplimentaires(ce que tu as code, pour qu'on essaye t'aider plus)?

    Bonne chance,

    Michel

  3. #3
    Membre régulier Avatar de thtghgh
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 221
    Points : 88
    Points
    88
    Par défaut
    Ca me semble assez compliqué en fait, je vais faire une interpolation numérique vu que j'ai un vecteur v avec mes valeurs dedans!
    Mais j'ai un trou de mémoire!!


    Voici mon vecteur v :

    v(n) =

    16 24 40 72 120 176 240 312 392 (j'ai pris un petit vecteur juste pour avoir un exemple) (donc v est fonction de n, n allant de 1 à 10)

    J'interpole ces points avec les commandes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    % Interpolation
     
    xi=[2:n]; %n=10
    yi=v;
    p1=polyfit(xi,yi,2)
    En executant le programme j'obtiens bien ce que je veux, c'est à dire
    p1 =

    5.3247 -16.0294 23.6571
    ce qui signifie que le polynome interpolant au degré 2 est 5.3247*x²-16.0294*x+23.6571

    Seulement j'aimerai afficher cette fonction ci dessus (sur le meme intervalle c'est à dire x allant de 2 à 10) et je ne me rappelle plus des commandes (linspace, polyval et tout, j'ai tout mélangé!!)


    Merci de m'aider!!!
    ----------------------------------------------------
    ----------------------------------------------------

  4. #4
    Membre extrêmement actif
    Avatar de mihaispr
    Inscrit en
    Décembre 2008
    Messages
    1 025
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 025
    Points : 858
    Points
    858
    Par défaut
    Citation Envoyé par thtghgh Voir le message
    Ca me semble assez compliqué en fait, je vais faire une interpolation numérique vu que j'ai un vecteur v avec mes valeurs dedans!

    Merci
    Ok. Si j'ai bien compris tu veux faire une interpolation numerique des valeurs d'un vecteur nomme v:

    Tu peux commencer lire d'ici:


    http://www.fon.hum.uva.nl/praat/manu...rpolation.html

    Aussi cherche dans le "Help Navigator" du Matlab:

    En command window:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    >>docsearch interpolation
    Tu dois utiliser la fonction interp1 en matlab:

    Bonne chance,

    Michel

  5. #5
    Membre régulier Avatar de thtghgh
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 221
    Points : 88
    Points
    88
    Par défaut
    Mais il n'existe pas une commande pour afficher le tracé de la courbe donné par les coefficient de poyfit???
    ----------------------------------------------------
    ----------------------------------------------------

  6. #6
    Membre extrêmement actif
    Avatar de mihaispr
    Inscrit en
    Décembre 2008
    Messages
    1 025
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 025
    Points : 858
    Points
    858
    Par défaut
    Citation Envoyé par thtghgh Voir le message
    Mais il n'existe pas une commande pour afficher le tracé de la courbe donné par les coefficient de poyfit???

Discussions similaires

  1. [XSLT] Faire une boucle sur une variable [i]
    Par PoT_de_NuTeLLa dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 07/06/2010, 12h45
  2. Réponses: 10
    Dernier message: 10/10/2003, 14h25
  3. batch pour faire une sauvegarde
    Par bibiodp dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 13/08/2003, 13h09
  4. Faire une liste de device??
    Par jackjack dans le forum DirectX
    Réponses: 1
    Dernier message: 23/05/2003, 14h43
  5. [XSL]faire une balise dans une balise??? (ComboBox)
    Par rastoix dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/05/2003, 08h34

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