El siguiente paso sería refinar el contenido del bucle para prepararlo para el ejercicio final. Pensemos que si realizamos 10.000 replicaciones, el archivo de salida incluirá 10.000 salidas de regresión, entre otra información, lo cual puede provocar que su tamaño sea tan grande que sencillamente no quepa en nuestra unidad de memoria. Puesto que de estos resultados sólo utilizaremos la serie tratio podrían omitirse en dicho archivo de salida los resultados intermedios. Hemos visto que esto se puede lograr con la opción SILENT de OLSQ y el comando REGOPT. Incorporando SILENT aún se imprimirá el tamaño muestral y la tabla con la estimación de los coeficientes, por lo que adicionalmente utilizaremos la sentencia REGOPT(NOPRINT)SMPL,COEF; para omitir por completo la copia de todos los resultados. Esta última sentencia no necesita incorporarse dentro del bucle, por lo que la escribiremos antes de su comienzo.
smpl 1,123;
random(uniform)x1;
random(uniform)x2;
regopt(noprint)smpl coef;
? Comienza simulación
do i=1 to 2;
random u;
y = 10 + 5*x1 + u;
olsq (silent) y c x1 x2;
smpl i,i;
tratio = @t(3);
smpl 1,123;
? Finaliza simulación
enddo;
? Análisis de resultados
smpl 1,i;
print tratio;
Obsérvese que se han añadido tres líneas al final, además de las justificadas anteriormente. En ellas se indica que comienza el "Análisis de resultados", y a continuación se redefine la muestra de modo que abarque toda la extensión de la serie generada tratio. Por último se solicita que se escriba dicha serie.
![]() |
|
![]() |