El script modela los datos de un experimento de riego por aspersión (Line-Source Sprinkler Irrigation) publicado por Hanks et al. (1980). Un primer DATA STEP crea el conjunto de datos 'line' que contiene los rendimientos (Y) para tres cultivos (Cult), dos bloques (Block), dos direcciones (Dir) y seis niveles de riego (Irrig). Luego, se utiliza el procedimiento PROC MIXED para ajustar un modelo lineal mixto complejo. El modelo especifica los efectos fijos (Cultivo, Dirección, Riego y sus interacciones) y los efectos aleatorios (Block y sus interacciones con la dirección y el riego). Se define una estructura de covarianza de tipo Toeplitz para las medidas repetidas. Finalmente, se calculan estimaciones específicas para comparar los cultivos y evaluar las tendencias relacionadas con el riego.
Análisis de datos
Type : CREATION_INTERNE
Los datos se crean directamente en el script a través de un paso DATA y una instrucción 'datalines'. El conjunto de datos 'line' se genera en memoria y no depende de ninguna fuente de datos externa.
1 Bloque de código
DATA STEP Data
Explicación : Este DATA STEP lee los datos integrados a través de 'datalines'. Para cada línea, lee un identificador de bloque y un nombre de cultivo. Un bucle 'do' genera luego 12 observaciones (subparcelas), calculando el nivel de riego (Irrig) y la dirección (Dir) en función del índice del bucle. La variable de rendimiento (Y) se lee para cada subparcela, y se añade una observación a la tabla 'line'.
Explicación : Este bloque aplica el procedimiento MIXED para analizar los datos. 'class' declara las variables categóricas. 'model' define el modelo de efectos fijos, incluyendo todas las interacciones entre Cultivo, Dirección y Riego. 'random' especifica los efectos aleatorios. 'repeated' modela la correlación de los residuos con una estructura de tipo Toeplitz para las medidas repetidas. 'lsmeans' calcula las medias de los mínimos cuadrados y 'estimate' permite probar hipótesis personalizadas sobre los efectos del modelo.
¡Copiado!
proc mixed;
class Block Cult Dir Irrig;
model Y = Cult|Dir|Irrig;
random Block Block*Dir Block*Irrig;
repeated / type=toep(4) sub=Block*Cult r;
lsmeans Cult|Irrig;
estimate 'Bridger vs Luke' Cult 1 -1 0;
estimate 'Linear Irrig' Irrig -5 -3 -1 1 3 5;
estimate 'B vs L x Linear Irrig' Cult*Irrig
-5 -3 -1 1 3 5 5 3 1 -1 -3 -5;
run;
1
PROC MIXED;
2
class Block Cult Dir Irrig;
3
model Y = Cult|Dir|Irrig;
4
random Block Block*Dir Block*Irrig;
5
repeated / type=toep(4) sub=Block*Cult r;
6
lsmeans Cult|Irrig;
7
estimate 'Bridger vs Luke' Cult 1 -1 0;
8
estimate 'Linear Irrig' Irrig -5 -3 -1135;
9
estimate 'B vs L x Linear Irrig' Cult*Irrig
10
-5 -3 -1135531 -1 -3 -5;
11
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.