Los datos se crean directamente en el script mediante un paso DATA y una instrucción 'datalines'. No provienen de SASHELP ni de una fuente externa.
1 Bloque de código
DATA STEP Data
Explicación : Este bloque crea la tabla SAS 'rats'. Lee las variables 'trt' (tratamiento), 'm' (número de ensayos) y 'x' (número de éxitos) a partir de datos integrados (datalines). Genera variables indicadoras 'x1' y 'x2' para el grupo de control y tratamiento, respectivamente. Se crea un identificador de camada ('litter') usando el número de observación (_n_).
¡Copiado!
data rats;
input trt $ m x @;
if (trt='c') then do;
x1 = 1;
x2 = 0;
end;
else do;
x1 = 0;
x2 = 1;
end;
litter = _n_;
datalines;
c 13 13 c 12 12 c 9 9 c 9 9 c 8 8 c 8 8 c 13 12 c 12 11
c 10 9 c 10 9 c 9 8 c 13 11 c 5 4 c 7 5 c 10 7 c 10 7
t 12 12 t 11 11 t 10 10 t 9 9 t 11 10 t 10 9 t 10 9 t 9 8
t 9 8 t 5 4 t 9 7 t 7 4 t 10 5 t 6 3 t 10 3 t 7 0
;
1
DATA rats;
2
INPUT trt $ m x @;
3
IF (trt='c') THENDO;
4
x1 = 1;
5
x2 = 0;
6
END;
7
ELSEDO;
8
x1 = 0;
9
x2 = 1;
10
END;
11
litter = _n_;
12
DATALINES;
13
c 1313 c 1212 c 99 c 99 c 88 c 88 c 1312 c 1211
14
c 109 c 109 c 98 c 1311 c 54 c 75 c 107 c 107
15
t 1212 t 1111 t 1010 t 99 t 1110 t 109 t 109 t 98
16
t 98 t 54 t 97 t 74 t 105 t 63 t 103 t 7 0
17
;
18
2 Bloque de código
PROC NLMIXED Data
Explicación : Este bloque ajusta un modelo mixto no lineal en la tabla 'rats'. Define los parámetros iniciales (parms), el predictor lineal 'eta' y la probabilidad 'p' a través de la función probit (probnorm). El modelo especifica una distribución binomial para la respuesta 'x'. Se incluye un efecto aleatorio 'alpha' con una varianza diferente por grupo de tratamiento y se agrupa por 'litter'. Se calcula una estimación de una relación con 'estimate', y las probabilidades predichas se guardan en una nueva tabla 'p' con 'predict'.
¡Copiado!
proc nlmixed data=rats;
parms t1=1 t2=1 s1=.05 s2=1;
eta = x1*t1 + x2*t2 + alpha;
p = probnorm(eta);
model x ~ binomial(m,p);
random alpha ~ normal(0,x1*s1*s1+x2*s2*s2) subject=litter;
estimate 'gamma2' t2/sqrt(1+s2*s2);
predict p out=p;
run;
1
PROC NLMIXEDDATA=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;
9
RUN;
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
Información de copyright : S A S S A M P L E L I B R A R Y
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.