Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > SAS STAT
SAS STAT Forum d'entraide sur les fonctionnalités liées à la statistique sur SAS : statistique descriptive, test, régression, classification
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/08/2011, 10h01   #1
Candidat au titre de Membre du Club
 
Femme
etudiante stagiaire en recherche clinique
Inscription : avril 2011
Messages : 74
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : etudiante stagiaire en recherche clinique
Secteur : Santé

Informations forums :
Inscription : avril 2011
Messages : 74
Points : 14
Points : 14
Par défaut proc mixed et transformation

Bonjour à tous

je voudraus faire une analyse de variance avec la procédure mixed.
Y= Variable.groupe + temps + interaction Variable.groupe*temps

La variable a expliquer Y n'étant pas distribuée normalement, j'ai pris l'inverse de cette variable de cette façon la distribution est noramle. (Faut-il transformer mon autre variable : le temps??)

Comment puis-je interpréter les résultats obtenue avec l'option lsmeans.
(comment interpréter les valeurs. Pour connaitre l'effet de la modalité i de la variable par exemple)


J'ai une toute autre question : on sert de la proc mixed pour faire une analyse de variance sur mesure répétée, mais on peu aussi s'en servir pour faire des régression linéaire mixte.
Je souhaite représenter ma variable Y en fonction du temps (modéliser la trajectoire de Y). Pour ce faire, j'ai d'abord réalisé une proc mixed dans chaque groupe :
Code :
1
2
3
4
5
proc mixed DATA=b.evtOUI;
class cle ;
model DIABUNIT2_Creatinine=delais /solution ddfm=KR;
random intercept /*delais*/ /subject=cle type=un solution; 
run;
ici faut-il utiliser l'option random intercept ou plutôt l'option repeated.

Ensuite j'ai réaliser une proc mixed sur l'ensemple de la poulation

Code :
1
2
3
4
5
6
proc mixed DATA=b.creatinine;
class cle Suivi_EvenementClassantDBHg;
model DIABUNIT2_Creatinine=delais Suivi_EvenementClassantDBHg delais*Suivi_EvenementClassantDBHg/solution ddfm=KR;
repeated /subject=cle(Suivi_EvenementClassantDBHg) type=ar(1) r rcorr; 
lsmeans Suivi_EvenementClassantDBHg/adjust=dunnett diff=control('Non') cods output  diffs;
run;
je ne sais si je dois inclure la variable Suivi_EvenementClassantDBHg comme effet fixe ou aléatoire (cette variable prend deux modalités : oui/non).
Comment intérepréter les résultats. Est ce qu'on peut avoire l'équation de la trajectoire et peut visualiser cette trajectoire sur un graphe?

J'avoue que je ne maitrise toujours pas l'utilisation de la proc mixed, et j'ai bien besoin d'un coupe de main.
Je vous remercie d'avance pour l'intêret que vous voudriez bien apporter à mes questionnements.
mathis86 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2011, 13h07   #2
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
Bonjour Mathis,

Beaucoup de questions! Je vais tenter d'y repondre; certaines ne sont pas forcement evidentes et sont relatives a des choix de modelisations propre a ton contexte, et font parfois appel a des prerequis statistiques; ce qui implique de pouvoir passer du temps sur ta problematique (que je n'ai pas personellement) et probablement d'avoir acces a des informations qui sont surement confidentielles.

Citation:
La variable a expliquer Y n'étant pas distribuée normalement, j'ai pris l'inverse de cette variable de cette façon la distribution est noramle. (Faut-il transformer mon autre variable : le temps??)
En effectuant une transformation, il faut bien etre conscient que la variable reponse est modifiee, et que par consequent on ne modelise plus la meme chose. Cette transformation a-t-elle un sens vis-a-vis de ta problematique et que vont signifier les resultats? Comment les interpreter? A toi de voir cela en fonction de ton contexte, de ton (tes) objectif(s) et des choix que tu as effectues retenant tel ou tel modele. Cela ne veut pas dire que modeliser l'inverse est faux; il faut juste se poser la question si ca va aider pour repondre a la question (ce qui est possible, mais je pense qu'il faut poser la question de l'interpretabilite d'un tel modele).

En tout cas, pas besoin de transformer ta variable TEMPS meme si tu as transforme ta variable reponse.

REPEATED vs RANDOM: Que cherches tu a modeliser? Quelle question cherches tu a repondre? Pourquoi utiliser un modele mixte si tu cherches a modeliser des donnees longitudinales? SAS va bettement appliquer le modele que tu lui demande: si tu ne lui indique pas que tu veux modeliser des donnees repetees, il ne va pas le faire; et si tu lui demande de modeliser un modele mixte (sans donnees longitudinales), c'est ce qu'il fera.

En esperant que ca aide,

Manoutz
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2011, 16h59   #3
Candidat au titre de Membre du Club
 
Femme
etudiante stagiaire en recherche clinique
Inscription : avril 2011
Messages : 74
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : etudiante stagiaire en recherche clinique
Secteur : Santé

Informations forums :
Inscription : avril 2011
Messages : 74
Points : 14
Points : 14
Bonjour jour à tous!

Merci pour ton aide Manoutz!

Enfaite je veux réaliser un modèle de régression linéaire pour données répétées.
Finalement voilà mon programme

Code :
1
2
3
4
5
6
7
PROC MIXED DATA=A;
CLASS cle groupe;
MODEL A=groupe delais delais*groupe/ solution ddfm=KR;
RANDOM INTERCEPT delais/ SUBJECT=cle TYPE=UN ;
REPEATED / SUBJECT=cle TYPE=UN;
Lsmeans groupe/adjust=dunnett diff=control('Non') cl;
RUN;
avec Repeated je précise qu'il séagit bien de donnée répétée.
avec random j'ajoute l'intercept comme aléatoire parceque on me l'a demandé mais qu'est ce que ça peut apporter?
Enfin la variable delais est le temps écoulé entre la mesure de la variable Y(les fréquences de détermination de A varie d'un individu à l'autre) et la date de survenue d'un évènement (pour les individus du groupe avec évènement ) ou de dernière nouvelle (pour les individus du groupe sans évènement). Cette variable est donc variable pour un même individu, c'est pourquoi elle apparait dans l'option random. Cependant mon modèle ne converge pas et ceux même en changeant les structures de corrélation (UN, CS TOEP et même AR(1) qui n'est pas adapté ici puisque il s'agit de données longitudinales non balancé).
Ce peut-il être du a ma variable delais qui prend des valeurs entre -96(mois) et 0? Quelle forme doit-elle avoir?

Merci encore pour ton aide
mathis86 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2011, 08h18   #4
Expert Confirmé
 
Avatar de olivier.decourt
 
Homme Olivier Decourt
Formateur en informatique
Inscription : avril 2008
Messages : 1 467
Détails du profil
Informations personnelles :
Nom : Homme Olivier Decourt
Âge : 34
Localisation : France

Informations professionnelles :
Activité : Formateur en informatique
Secteur : Conseil

Informations forums :
Inscription : avril 2008
Messages : 1 467
Points : 2 823
Points : 2 823
Bonjour.
Ton modèle me semble très complexe (je veux dire : plein de paramètres à estimer) et donc difficile à faire converger. D'autant que certains choix me semblent étranges (délai dans RANDOM par exemple).
Actuellement, ton modèle déplié ressemble à ça :

A = constante + groupe + delais + delais*groupe
+ cle + délais*cle

Je l'ai mis sur 2 lignes pour qu'on voie mieux comment il est constitué : la 1e ligne est ton instruction MODEL et elle me semble défendable. Juste un point : est-ce que tu as regardé un graphique de [A vs DELAIS] pour vérifier que la relation était linéaire ? Car elle sera résumée par un coefficient qui traduit une pente dans ton modèle.
La 2e ligne vient de l'instruction RANDOM : quand on ajoute une option SUBJECT à RANDOM c'est comme si on mettait toutes les variables de RANDOM en interaction avec la variable de SUBJECT.
J'ai juste simplifié INTERCEPT*CLE en CLE puisqu'il s'agit d'un coefficient par sujet. Ces coefficients (non affichés tant que tu ne mets pas d'option SOLUTION dans RANDOM, mais calculés quand même) traduisent un écart de chaque sujet (toutes mesures confondues) à la moyenne générale de A.
Quant à DELAIS*CLE, l'inclure dans le modèle veut dire que tu calcules une pente pour chaque sujet, définie comme l'écart à la pente tous sujets confondus (l'effet fixe DELAIS).

Par ailleurs, je m'interroge sur la pertinence du TYPE=UN dans RANDOM : ça signifie que tu crains une covariance entre les coefficients estimés pour chaque sujet (l'écart à la moyenne et la pente de l'effet DELAIS) ? Ca fait encore plus de paramètres à estimer pour le modèle et donc ça complique la convergence.
En tout cas, le TYPE dans RANDOM est indépendant de celui de REPEATED car ils ne gouvernent pas du tout le même bloc de la matrice de variance-covariance.

Cela dit, si le modèle ci-dessus est réellement ce que tu veux ajuster, alors c'est peut-être juste un problème algorithmique de non-convergence. Tu peux essayer de jouer sur l'algo utilisé par SAS (option METHOD, par exemple MIVQUE0 converge plus facilement et en théorie doit donner des résultats proches du REML) ou sur la précision des calculs de convergence (options CONVG et CONVH).

Bon courage.
Olivier
olivier.decourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/09/2011, 10h00   #5
Membre Expert
 
Homme
Biostatisticien
Inscription : juin 2009
Messages : 1 143
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Irlande

Informations professionnelles :
Activité : Biostatisticien
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : juin 2009
Messages : 1 143
Points : 1 760
Points : 1 760
Bonjour,

Je mettrais plutot l'accent sur la problematique methodologique avant de regerder le technique.

A quoi corresond A? Qu'est ce qui est mesure? S'agit-il toujours d'une variable transformee?

Citation:
avec random j'ajoute l'intercept comme aléatoire parceque on me l'a demandé mais qu'est ce que ça peut apporter?
Tu poses la une bonne question, mais pas aux bonnes personnes! Nous n'avons pas les elements contextuels pour y repondre precisement dans ton cas, vis-a-vis de ton objectif. Mais ca peut se defendre - voir se rendre indispensable, en etant conscient qu'inclure deux effets aleatoire va complexifier d'autant plus convergence (inutile donc de les inclure si l'on peut s'en passer).
Manoutz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h35.


 
 
 
 
Partenaires

Hébergement Web