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

Débutez Discussion :

Calculer racine la moyenne des résidus au carré


Sujet :

Débutez

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 88
    Points : 63
    Points
    63
    Par défaut Calculer racine la moyenne des résidus au carré
    bonjour,
    étant habituée au logiciel R je ne sais meme pas faire un calcul tout simple sous SAS...
    J'ai récupéré les réisdus de mon modèle et j'aimerai ensuite calculer le RMSE (racine de la moyenne des résidus carré) mais je sais pas comment l 'écrire...

    voici le code que j'ai commencé a écrire, si qn pouvait m'éclairer...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    proc glm data=data1;
    class group;
    model ch=group;
    output out=residus r=resid;
    lsmeans group;
    run;
     
    /*proc print data=residus;
    run;*/
     
    data data1;
    RMSE = sqrt((sum(resid^2)/75));
    run;
    proc print data=RMSE;
    run;

    MERCI!!!!!!!!!!!!!!!!!

  2. #2
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 19
    Points : 22
    Points
    22
    Par défaut
    Bonjour,

    Pour mettre au carré la syntaxe est **

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    proc glm DATA=data1;
    class GROUP;
    model ch=GROUP;
    output out=residus r=resid;
    lsmeans GROUP;
    run;
     
    /*proc print data=residus;
    run;*/
     
    DATA data1;
    set residus;
    RMSE = sqrt((sum(resid**2)/75));
    run;
    proc print DATA=RMSE;
    run;
    J'espère que ça va fonctionner.

    Magali

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 88
    Points : 63
    Points
    63
    Par défaut
    non ca ne marche pas ms en rajoutant une ligne c un peu mieux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    DATA data1;
    set residus;
    RMSE = sqrt((sum(resid**2)/75));
    put RMSE=;
    run;
    ms le pbm c est que g 75 obs ds ma table et donc 75 RMSE qui sortent je comprend pas...

  4. #4
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    L'étape DATA ne fonctionne qu'en lisant une ligne à la fois dans les données. Les calculs sont donc effectués ligne par ligne. Pas de souci pour la mise au carré, mais la somme n'est pas verticale. La fonction SUM dans l'étape DATA sert à additionner les valeurs de plusieurs variables dans une même ligne.
    Ce sera plus simple en SQL.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    PROC SQL ;
    SELECT sqrt((mean(resid**2))) AS RMSE FROM work.residus ;
    QUIT ;
    Et si tu veux mettre ça dans une table, il faut mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE TABLE work.res1 AS
    devant SELECT.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 88
    Points : 63
    Points
    63
    Par défaut
    ok merci!!!

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/07/2015, 16h34
  2. Calculer la tailles moyennes des fichiers
    Par hacbao dans le forum Shell et commandes GNU
    Réponses: 9
    Dernier message: 22/12/2013, 23h01
  3. Réponses: 3
    Dernier message: 26/10/2010, 22h14
  4. Réponses: 8
    Dernier message: 22/05/2008, 16h05
  5. [Débutant] Calcul de la moyenne des composantes RGB d'une image
    Par amalirou dans le forum Images
    Réponses: 3
    Dernier message: 24/09/2007, 22h44

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