Publié le :
Statistique CREATION_INTERNE

Modèle Probit-Normal avec PROC NLMIXED pour Données Binomiales

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script commence par créer un jeu de données SAS© nommé 'rats' à l'aide d'une étape DATA et de données internes (datalines). Ces données proviennent d'une expérience comparant un groupe de traitement ('t') à un groupe de contrôle ('c'). Des variables indicatrices (x1, x2) sont créées pour différencier les deux groupes. Ensuite, la procédure NLMIXED est appliquée pour modéliser le nombre de succès 'x' sur 'm' essais. Le modèle définit un prédicteur linéaire 'eta' qui intègre des effets fixes (t1, t2) et un effet aléatoire 'alpha' spécifique à chaque portée ('litter'). La probabilité de succès 'p' est modélisée via la fonction de distribution normale standard (modèle probit). Le script estime également un paramètre composite 'gamma2' et génère un jeu de données en sortie contenant les probabilités prédites.
Analyse des données

Type : CREATION_INTERNE


Les données sont créées directement dans le script via une étape DATA et une instruction 'datalines'. Elles ne proviennent ni de SASHELP ni d'une source externe.

1 Bloc de code
DATA STEP Data
Explication :
Ce bloc crée la table SAS 'rats'. Il lit les variables 'trt' (traitement), 'm' (nombre d'essais), et 'x' (nombre de succès) à partir de données intégrées (datalines). Il génère des variables indicatrices 'x1' et 'x2' pour le groupe de contrôle et de traitement respectivement. Un identifiant de portée ('litter') est créé en utilisant le numéro d'observation (_n_).
Copié !
1DATA rats;
2 INPUT trt $ m x @;
3 IF (trt='c') THEN DO;
4 x1 = 1;
5 x2 = 0;
6 END;
7 ELSE DO;
8 x1 = 0;
9 x2 = 1;
10 END;
11 litter = _n_;
12 DATALINES;
13c 13 13 c 12 12 c 9 9 c 9 9 c 8 8 c 8 8 c 13 12 c 12 11
14c 10 9 c 10 9 c 9 8 c 13 11 c 5 4 c 7 5 c 10 7 c 10 7
15t 12 12 t 11 11 t 10 10 t 9 9 t 11 10 t 10 9 t 10 9 t 9 8
16t 9 8 t 5 4 t 9 7 t 7 4 t 10 5 t 6 3 t 10 3 t 7 0
17;
18 
2 Bloc de code
PROC NLMIXED Data
Explication :
Ce bloc ajuste un modèle mixte non linéaire sur la table 'rats'. Il définit les paramètres initiaux (parms), le prédicteur linéaire 'eta', et la probabilité 'p' via la fonction probit (probnorm). Le modèle spécifie une distribution binomiale pour la réponse 'x'. Un effet aléatoire 'alpha' avec une variance différente par groupe de traitement est inclus et groupé par 'litter'. Une estimation d'un rapport est calculée avec 'estimate', et les probabilités prédites sont sauvegardées dans une nouvelle table 'p' avec 'predict'.
Copié !
1PROC NLMIXED DATA=rats;
2 parms t1=1 t2=1 s1=.05 s2=1;
3 eta = x1*t1 + x2*t2 + alpha;
4 p = probnorm(eta);
5 model x ~ binomial(m,p);
6 random alpha ~ normal(0,x1*s1*s1+x2*s2*s2) subject=litter;
7 estimate 'gamma2' t2/sqrt(1+s2*s2);
8 predict p out=p;
9RUN;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : S A S S A M P L E L I B R A R Y