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

Excel Discussion :

regression puissance avec Excel


Sujet :

Excel

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 108
    Points : 65
    Points
    65
    Par défaut regression puissance avec Excel
    Bonjour,

    Sous Excel, je connais la régression linéaire, avec comme formule:
    y = b + m1x1 + m2x2 + ...
    en utilisant droitereg, linest en anglais.

    ainsi que la régression exponentielle, avec comme formule:
    y = b * m1^x1 * m2^x2 * ...
    en utilisant logreg, logest en anglais.

    Est-il possible de faire de la régression puissance, avec comme formule:
    y = b * x1^m1 * x2^m2 * ...

    ???

    merci bien,
    Slimane.

  2. #2
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Points : 53
    Points
    53
    Par défaut
    Je n'ai pas bien compris si c'était les mi ou les xi tes variables explicatives.

    Ce que tu veux faire revient à modéliser y comme :


    ln y = ln b + m1 ln x1 + m2 ln x2 +...


    Tu peux donc te contenter de faire une régression sur la variable (ln y) par les variables (ln xi)...

    Ca c'est si tes variables xi sont tes variables explicatives...

    Si tes mi sont tes variables explicatives, il faut mener une régression de (ln y) en fonction des variables (mi), ce qui te permettra de trouver tes (ln xi) optimaux.

    Ensuite, il faut passer à l'exponentielle pour xi

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 108
    Points : 65
    Points
    65
    Par défaut
    Salut et merci pour ta réponse,

    les "x" sont les inconnues qui servent ensuite à faire des estimations.
    Par exemple, un résultat pour une régression puissance serait:

    y = 0.8 * x1^0.56 * x2^2.1

    Si j'ai bien compris, il faut que j'applique un ln sur toutes mes données, et ensuite je fais un droite reg?

    Au niveau formule, r2 et F il n'y a rien a modifier par la suite?

  4. #4
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Points : 53
    Points
    53
    Par défaut
    pour la formule il ne faut rien modifier...

    En revanche, le R2 et le F seront moins pertinents (voire pas pertinents du tout).

    En fait, ton modèle minimise la variance de la variable W dans la formule :

    Y = b*x1^m1*x2^m2*exp(W)

    où W est une v.a. d'espérance nulle...

    d'ailleurs, comme E(exp(W)) = exp(E(W)+V(W)/2) (en tout cas si W est une loi normale), je pense que la formule que je t'ai donné précédemment est biaisée, et qu'un meilleur estimateur de ton modèle optimal serait

    Y = b*exp(V(W)/2)*x1^m1*x2^m2

    où W est la standart deviation qui reste dans ta régression des log en fonction des logs...

    Pour le F, je pense qu'il ne change pas (en même temps je suis pas très à l'aise avec le F).

    Pour le R2, tu peux calculer toi même le R2 de ton modèle en regardant la variance résiduelle (i.e. la variance de Y-b*exp(V(W)/2)*x1^m1*x2^m2) et en prenant son rapport avec la variance de Y. Ca te donnera effectivement la part de variance expliquée par le modèle (en fait, la formule que je viens de te donner te donnera 1-R2 mais je pense que tu sauras faire le calcul ).

    Cette méthode est un peu heuristique, et il faudrait que quelqu'un plus fort que moi en régressions étranges valide la partie "résultats mathématiques" (la partie "donne des résultats cools et utiles" est déjà assurée par le fait qu'on utilise une régression auxiliaire sur les logs)...

    En tout cas, je pense qu'un forum mathématique serait plus adapté pour poser ce genre de questions qu'un forum Excel, on est un peu en train de tomber dans le HS...

  5. #5
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 108
    Points : 65
    Points
    65
    Par défaut
    Ma question, et mon espoir au début, était de savoir si excel fournissait d'origine ce calcul. (un truc comme droitereg genre puissreg)

    Tout ce que tu m'explique est compliqué à mes yeux et sort de mes possibilités en temps...

  6. #6
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Points : 53
    Points
    53
    Par défaut
    ben si t'as pas de temps, tu fais juste ta régression linéaire normale sur les logs, et puis tu passes à l'exponentielle.

    Si c'est pour analyser des effets rapidement, tu auras toutes tes informations, et tu pourras en déduire un modèle pas trop moche.
    Si c'est à des fins mathématiques, ca risque de ne pas te suffire.

  7. #7
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 108
    Points : 65
    Points
    65
    Par défaut
    et puis tu passes à l'exponentielle
    Que veux-tu dire par passer à l'exponentielle?

    Ce que j'ai compris pour l'instant c'est:

    -appliquer un log sur toutes les données
    -faire un droitereg
    -la formule resultante sera de la forme y = b * x1^m1 * x2^m2

    merci encore pour ton soutien.

  8. #8
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Points : 53
    Points
    53
    Par défaut
    Voilà la marche à suivre en plus précis :

    Remplacer tes colonnes Xi par leur log : log(Xi).

    Faire une régression linéaire de (ln(Y)) sur ces variables. Tu obtiens un truc genre :


    ln Y = a + b * (ln X1) + c * (ln X2) + epsilon

    Où epsilon est une variable aléatoire d'espérance nulle et de variance V (la variance résiduelle)

    En passant à l'exponentielle, tu obtiens :

    Y = exp(a)* X1^b * X2^C * exp(epsilon)


    C'est là qu'intervient la phase un peu technique :

    en supposant que epsilon est une loi normale, on a Espérance[ exp(epsilon) ] = exp(V²/2)

    Par conséquent, l'espérance de Y sachant X1 et X2 est, selon ce modèle :


    exp(a+V²/2)*X1^b*X2^c.

    C'est ton meilleur estimateur de Y (toujours d'après ce modèle), et c'est donc là ta solution.

    Une version un peu moins précise (et donc fausse) peut être obtenue en obtenant le terme exp(V²/2)...

  9. #9
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 108
    Points : 65
    Points
    65
    Par défaut
    merci, je commence à comprendre...

    Je cite Excel:
    L'équation de la droite renvoyée par la fonction de régression linéaire est la suivante :

    y = m1x1 + m2x2 + ... + b

    où la valeur dépendante y est une fonction des valeurs indépendantes x. Les valeurs m sont des coefficients correspondant à chaque valeur x et b est une valeur constante.
    Par contre je ne sais pas comment obtenir le a et le V à partir de ce que renvoie Excel lors d'une regression linéaire pour calculer exp(a+V²/2)

    Quel est le lien entre le b ci-dessus et exp(a+V²/2) dont j'ai besoin?


    Est-ce que les valeurs dont j'ai besoin sont dans les autres valeurs qui sont retournées par la régression, à savoir:

    se1,se2,...,sen Les valeurs d'erreur type correspondant aux coefficients m1,m2,...,mn.

    seb La valeur d'erreur type correspondant à la constante b (seb = #N/A si l'argument constante a la valeur FAUX).

    r2 Le coefficient de détermination. Compare les valeurs y estimées aux valeurs y réelles et varie entre 0 et 1. Un coefficient de détermination égal à 1 indique une corrélation parfaite de l'échantillon (aucune différence entre les valeurs y estimées et réelles). A l'inverse, un coefficient de détermination égal à 0 (zéro) indique que l'équation de régression ne peut servir à prévoir une valeur y.

    sey L'erreur type pour la valeur y estimée.

    F La statistique F ou valeur F observée. Utilisez ce paramètre pour déterminer si la relation observée entre les variables dépendantes et indépendantes est due au hasard.

    df Les degrés de liberté. Ils vous aident à trouver les valeurs critiques de la statistique F dans une table statistique. Comparez les valeurs trouvées dans la table à la statistique F renvoyée par la fonction DROITEREG pour déterminer le niveau de confiance du modèle.

    ssreg La somme de régression des carrés.

    ssresid La somme résiduelle des carrés.
    La solution n'a pas l'air très loin, mais je suis piètre statisticien...

  10. #10
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Points : 53
    Points
    53
    Par défaut
    alors le "a" dont je te parle, c'est en fait la constante qu'Excel trouve en faisant sa régression.

    Ce que j'appelle a, c'es donc le b dans

    L'équation de la droite renvoyée par la fonction de régression linéaire est la suivante :

    y = m1x1 + m2x2 + ... + b

    Quant au V, il s'agit de la variance résiduelle de y.


    C'est donc ssresid divisé par les degrés de libertés (les degrés de liberté, c'est tout simplement le nombre d'observations moins le nombre de variables explicatives)

    donc V = ssresid/df




    donc pour faire le lien entre les deux notations (j'insiste lourdement) :

    exp(a+V/2) = exp(b+ssresid/(2*df))


    J'avais mis V² dans ma formule, je m'étais trompé. C'est la variance tout court qu'il faut mettre (la variance étant parfois notée sigma², cela explique mon erreur).

  11. #11
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 108
    Points : 65
    Points
    65
    Par défaut
    merci beaucoup magemax.

    Je vais me pencher sur les calculs avec Excel et dirais des nouvelles.

  12. #12
    Membre du Club
    Inscrit en
    Septembre 2005
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 108
    Points : 65
    Points
    65
    Par défaut
    T'es un super boss magemax, les calculs semblent vraiment coller. (on verra les retours des testeurs...).

Discussions similaires

  1. Soucis avec excel
    Par poussinphp dans le forum Langage
    Réponses: 10
    Dernier message: 07/10/2005, 10h14
  2. Comment créer des onglets comme avec Excel (sheet1/sheet2)
    Par pierrot10 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 20/09/2005, 16h36
  3. [MFC] [CRecordset] Problème avec Excel
    Par Yellowmat dans le forum MFC
    Réponses: 4
    Dernier message: 20/07/2005, 15h24
  4. Analyse avec Excel
    Par Ric500 dans le forum Access
    Réponses: 6
    Dernier message: 15/02/2005, 15h12
  5. [C#] [EXCEL] Travailler avec EXCEL sans ouvrir le logiciel
    Par Fabsou dans le forum Windows Forms
    Réponses: 3
    Dernier message: 16/07/2004, 10h29

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