Analyses de trajectoires (suite)

By nilidas

Tel que promis, voici la suite du premier article, avec la programmation de PROC TRAJ (désolé pour l’écriture peut conviviale, mais je ne comprends toujours pas très bien comment ajuster le format des textes du blog.)

 

PROC TRAJ  DATA = OUT =/*Fichier de sortie avec les probabilités prédites que l’individu appartienne à chaque trajectoire*/

OUTPLOT =/*Fichier de sortie qui servira à tracer les graphiques*/

OUTSTAT =/*Fichier de sortie qui contient les équations des trajectoires*/

OUTEST =/*Fichier de sortie avec les paramètres des trajectoires et les statistiques d’ajustement du modèle*/

ITDETAIL/*Pour obtenir les détails sur les itérations*/

CI95M/*Option à mettre pour pouvoir obtenir des intervals de confiance autour des trajectoires*/

OUTPLOT2 = OUTSTAT2 =/*Même fichiers, mais pour effectuer de l’analyse duale, c’est-à-dire pour coupler les trajectoires de deux phénomènes, par exemple la motivation et la pérception de compétence*/;

MODEL cnorm/zip/logit/*Définition de la variable réponse :CNORM : Normal censurée, c’est le cas des études en psychologie où les individus doivent répondre selon une échelle bien définie, par exemple allant de 0 à 5.

ZIP : Zero inflated Poisson, c’est le cas lorsque la variable réponse est un dénombrement, avec possibilité que zéro (0) soit une valeur plus probable qu’avec la loi de Poisson standard.

Logit: La variable réponse est dichotomique.*/;

VAR /*Toutes les variables réponses pour chaque temps, s’il y a 5 temps de mesure, les 5 temps doivent être dans une variable différente, par exemple

 

id temps1 temps2 temps3 temps4 temps5 mot1 mot2 mot3 mot4 mot5

1    1             2           3         4             5       1.5   3.47  1.25   4.25  5.24

Alors on doit inscrire : VAR mot1-mot5*/;

TCOV /*Toutes les covariables variant dans le temps. Chacune doivent être écrites pour chacun des temps, comme pour la variable réponse.Par exemple : age1-age5 sexe1-sexe5 (bien que le sexe ne varie pas dans le temps, on peut mettre le sexe comme une TCOV*/;

 

RISK /*Les variables qui sont des facteurs de risque d’appartenir à une trajectoire plutôt qu’une autre. Les facteurs de risque ne sont mesurée qu’à un temps*/

INDEP /*Toutes les variables qui représente les temps de mesure, dans l’exemple précédent : temps1-temps5*/;

MIN/*À inscrire si la variable réponse est CNORM, il s’agit de la plus petite valeur possible pour la variable réponse*/;

MAX/*À inscrire si la variable réponse est CNORM, il s’agit de la plus grande valeur possible pour la variable réponse*/;

 

ORDER/*L’ordre de chacune des trajectoires, s’il y a trois trajectoires, une constante, une linéaire, une quadratique, il faut inscrire : 0 1 2*/;

 

NGROUPS /*Le nombre de trajectoires à modéliser*/;  

ID /*Variable indiquant le numéro d’idendification de l’observation*/; 

/*Pour de l’analyse duale*/

MODEL2; 

VAR2; 

INDEP2 /*Il faut inscrire un nom différent de variables que pour indep1, même si les deux phénomènes ont lieu en même temps*/; 

MIN2; 

MAX2; 

ORDER2; 

NGROUPS2 ; 

TCOV2 ; 

RISK2 ;

RUN;

%TRAJPLOT(/*Fichier Outplot*/, /*Fichier outstat*/, /*Titre 1*/, /*Titre 2*/, /*Titre Axe des Y*/, /*Titre Axe des X*/);

/*Graphiques des trajectoires, en ligne pleine la trajectoire observée. La trajectoire prédite est en ligne pointillée */

%TRAJPLOTNEW(/*Fichier Outplot*/, /*Fichier outstat*/, /*Titre 1*/, /*Titre 2*/, /*Titre Axe des Y*/, /*Titre Axe des X*/);

/*En ligne pleine, la trajectoire prédites, autour l’intervalle de confiance*/

 

 

Denis

5 réponses vers «Analyses de trajectoires (suite)»

  1. jf dit :

    j’essaye de me mettre à la proc traj de Sas.

    Dans les exemples donnés par le site de la proc traj, l’échelle de temps est “bidouillée” de telle facon qu’elle soit centrée sur la valeur 0 et qu’elle aille en gros de -1 à +1. Quel est le sens de cette transformation, pourquoi cette transformation ?

    J’ai fait quelques essais (sur la logit). la proc traj semble insensible à l’applicatuon d’un facteur multiplicatif à tous les temps (bon, normal ), mais elle semble sensible à l’application d’un facteur additif (enfin, une transllation). Je ne comprends pas trop.

    Quelqu’un a-t-il des éclaircissements quant à ça ?

  2. Denis Talbot dit :

    Je crois que Nagin discute de la transformation de l’échelle du temps dans son livre sur l’analyse des trajectoires. Je vais essayer de regarder ça lorsque je serai au bureau demain ou après-demain et je vais vous en redonner des nouvelles.

  3. nilidas dit :

    Voilà, j’ai trouvé ce que Nagin en dit dans à la page 44 de Group-Based Modeling of Development

    “Observe that age is divided by 10 in all of these illustrations. This is done for computational reasons only, but it is imperative. The maximum likelihood parameter estimates are identified by a complex computer search. The computational accuracy of the calculations required by this search is often greatly improved by scaling age or time variable so that the successively higher tmers in the polynomial definig the trajectory are all of about the same scale (that is, age, age squared, and age cubed are within the same order of magnitude).

    J’espère que cela permet de répondre à votre question.

    Denis

  4. jf dit :

    Merci.
    Pour le facteur multiplicatif, c’est devenu très clair.
    Je comprends mieux cette transformation, enfin l’intérêt de cette transformation, de l’application de ce coefficient multplicatiif sur l’echelle du temps.

    Le mystère reste quant à moi quant aux translations sur l’échelle du temps qui elles changent (au moins pour les logits) les résultats même jusqu’aux significations des coefficients estimés par le modèle.

  5. jf dit :

    Après quelques essais, je pense qu’une translation sur l’échelle de temps affecte les coefficients estimés et en particulier la pente (linear) à cause des termes de degré au dessus (quadratic et cubic). Le terme de degré le plus élevé lui par contre n’est pas affecté par une translation. Si on ne va que jusqu’à un degré 1 (estimation linéaire de la trajecoire), la pente n’est pas affectée par une translation de l’échelel du temps.

    Bon, ça s’explique d’un point de vue mathématique, mais la signification des termes estimés change aussi et de façon qui peut être importante. J’avoue que ça me gêne d’un point de vue de l’interprétation des coefficients : l’interprétation des coefficients serait dépendante de l’échelle de temps qu’on a prise ! On pourrait avoir des conclusiosn différentes selon l’échelle de temps qu’on a prise…
    Il y a encore des trucs qui m’échappent…

    Comme l’a dit nilidas, l’usage de la proc traj n’est pas évident du tout.

Laisser un commentaire