Publicado el :

Ejemplo de iniciación a PROC MCMC

Este código también está disponible en: Deutsch English Français
El script realiza un análisis de regresión lineal simple utilizando un enfoque bayesiano a través de PROC MCMC. Define distribuciones a priori para los coeficientes de regresión (beta0, beta1) y la varianza del error (sigma2), luego modela la variable 'weight' en función de 'height'. El muestreo de la cadena de Markov Monte Carlo se configura con 10000 iteraciones y un paso de selección de 2. Los resultados de la cadena MCMC se guardan en un conjunto de datos llamado 'classout'. La producción gráfica se activa durante la ejecución del procedimiento.
Análisis de datos

Type : SASHELP


Los datos fuente provienen del conjunto de datos integrado 'SASHELP.CLASS', que es un conjunto de datos SAS estándar disponible en el entorno SAS.

1 Bloque de código
ODS
Explicación :
Activa el sistema de destino de salida (ODS) para la producción de gráficos, permitiendo a PROC MCMC generar visualizaciones de los resultados del análisis.
¡Copiado!
1ods graphics on;
2 Bloque de código
PROC MCMC
Explicación :
Este bloque ejecuta el procedimiento PROC MCMC para un análisis de regresión bayesiana. Utiliza 'sashelp.class' como datos de entrada y crea un conjunto de datos de salida 'classout' que contiene las muestras MCMC. Los parámetros 'beta0', 'beta1' y 'sigma2' se declaran con valores iniciales. Se especifican distribuciones a priori (normal para los betas, gamma inversa para sigma2). La media lineal 'mu' se define como una función de 'height', y el modelo especifica que 'weight' sigue una distribución normal con esta media y la varianza 'sigma2'. Las opciones 'nmc', 'thin' y 'seed' controlan el muestreo MCMC.
¡Copiado!
1PROC MCMC DATA=sashelp.class outpost=classout nmc=10000 thin=2 seed=246810;
2 parms beta0 0 beta1 0;
3 parms sigma2 1;
4 prior beta0 beta1 ~ normal(mean = 0, var = 1e6);
5 prior sigma2 ~ igamma(shape = 3/10, scale = 10/3);
6 mu = beta0 + beta1*height;
7 model weight ~ n(mu, var = sigma2);
8RUN;
3 Bloque de código
ODS
Explicación :
Desactiva la producción gráfica a través del sistema de destino de salida (ODS), terminando la generación de gráficos después de la ejecución de PROC MCMC.
¡Copiado!
1ods graphics off;
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