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

R Discussion :

Récupération des coefficients d'une régression dans des variables


Sujet :

R

  1. #1
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Février 2017
    Messages : 4
    Par défaut Récupération des coefficients d'une régression dans des variables
    Bonsoir,

    Nouveau à R, je souhaite récupérer les coefficients calculés par une régression linéaire dans des variables.

    Est-ce possible et dans ce cas comment faire.

    > summary (mod)

    Call:
    lm(formula = tf$Score ~ tf$Sc + tf$Sj +
    tf$Se + tf$cote + tf$prt + tf$age)

    Residuals:
    Min 1Q Median 3Q Max
    -4.6511 -1.1451 -0.3045 0.5813 7.4334

    Coefficients:
    Estimate Std. Error t value Pr(>|t|)
    (Intercept) 1.6646193 0.0354887 46.906 <2e-16 ***
    tf$Sc 0.3231187 0.0023545 137.237 <2e-16 ***
    tf$Sj 0.1165995 0.0049348 23.628 <2e-16 ***
    tf$Se -0.0081197 0.0053303 -1.523 0.128
    tf$cote -0.0035142 0.0001574 -22.328 <2e-16 ***
    tf$prt -0.1344675 0.0020140 -66.766 <2e-16 ***
    tf$age -0.0034814 0.0032862 -1.059 0.289
    ---
    Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

    Residual standard error: 1.789 on 90810 degrees of freedom
    Multiple R-squared: 0.2784, Adjusted R-squared: 0.2783
    F-statistic: 5839 on 6 and 90810 DF, p-value: < 2.2e-16
    Un grand merci pour votre aide.

    pp

  2. #2
    Membre éclairé
    Homme Profil pro
    Data Scientist
    Inscrit en
    Février 2017
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Data Scientist

    Informations forums :
    Inscription : Février 2017
    Messages : 28
    Par défaut
    Salut !

    Oui c'est facile. Tu as même plusieurs façon de les récupérer.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mod=lm(formula = tf$Score ~ tf$Sc + tf$Sj +tf$Se + tf$cote + tf$prt + tf$age)
    En lançant une de ces instructions:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    mod$coef
    mod$coefficient
    coef(mod)
    mod[[1]]
    Si tu as besoin d'autres choses avec ta régression linéaire. Tu peux lancer la fonction attributes() et voir ce que tu peux récupérer (comme les résidus si tu en as envie)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Février 2017
    Messages : 4
    Par défaut
    Merci DeepLearning pour ta réponse.

    En fait, j'ai besoin de mettre chaque coefficient dans une variable ...

    un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    coef1 <- coefficient(tf$Sc)
    coef2 <- coefficient(tf$Sj)
    .../...
    une idée?

  4. #4
    Membre éclairé
    Homme Profil pro
    Data Scientist
    Inscrit en
    Février 2017
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Data Scientist

    Informations forums :
    Inscription : Février 2017
    Messages : 28
    Par défaut
    Je vois pas vraiment l'intérêt de faire ça en fait ...

    Si tu stockes tes coefficients dans un objet (un vecteur sera généré), tu peux les récupérer aussi facilement que possible.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    coeff=mod$coef
     
    coeff[1]
    coeff[2]
    coeff[3]
     
    coeff["Sc"]
    coeff["Sj"]
    coeff["cote"]

  5. #5
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Février 2017
    Messages : 4
    Par défaut
    Merci, mais je ne voulais que la partie numérique

    En fait, je viens de trouver -->

    coef(summary(mod))["ds$cote","Estimate"]
    C'est pour sauver les différents résultats de la régression dans une base de données.

    Merci pour ton aide DeepLearning ... attributes(mod) me sera très utile aussi!

  6. #6
    Membre éclairé
    Homme Profil pro
    Data Scientist
    Inscrit en
    Février 2017
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Data Scientist

    Informations forums :
    Inscription : Février 2017
    Messages : 28
    Par défaut
    Ah ce qui te gênait c'était le nom de tes variables dans le vecteur de tes coefficients ? C'est pas un problème ça, ils ne sont pas gênants et tu peux faire tous les calculs que tu souhaites même si tu vois les noms au dessus.

    Si vraiment tu souhaites les enlever, tu peux faire ça:

  7. #7
    Membre émérite
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Par défaut
    La fonction coefficients (standard dans R) fait exactement ce que tu cherches.

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

Discussions similaires

  1. Faire une boucle sur des OptionButton d'une feuille dans une userform
    Par Marty57070 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/06/2015, 07h23
  2. Afficher des données d'une BD dans des Textbox
    Par mazdahmen dans le forum ASP.NET
    Réponses: 7
    Dernier message: 15/09/2010, 01h41
  3. Réponses: 2
    Dernier message: 06/06/2010, 15h15
  4. Réponses: 4
    Dernier message: 08/03/2010, 14h32
  5. [ODBC] enregistrement des résultat d'une requete dans des variables
    Par maraly dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 01/02/2007, 14h24

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