Scénario de test & Cas d'usage
Modelos de árboles de regresión aditiva bayesiana.
Descubrir todas las acciones de bartCrea una tabla de gran volumen (`datos_precios_energia`) con 100,000 observaciones para simular un escenario de puntuación masiva. También se crea una tabla ficticia para el modelo.
| 1 | DATA mycas.datos_precios_energia; |
| 2 | call streaminit(789); |
| 3 | DO i = 1 to 100000; |
| 4 | demanda_prevista = rand('NORMAL', 5000, 500); |
| 5 | gen_eolica = rand('NORMAL', 1000, 300); |
| 6 | precio_gas = rand('UNIFORM') * 10 + 2; |
| 7 | OUTPUT; |
| 8 | END; |
| 9 | RUN; |
| 10 | |
| 11 | DATA mycas.modelo_energia_bart; |
| 12 | LENGTH _Value_ $ 200; |
| 13 | _Value_ = 'simulated_model_with_mcmc_samples'; |
| 14 | OUTPUT; |
| 15 | RUN; |
| 1 | PROC CAS; |
| 2 | bart.bartScore / |
| 3 | restore={name='modelo_energia_bart'}, |
| 4 | TABLE={name='datos_precios_energia'}, |
| 5 | casOut={name='precios_distribucion_completa', replace=true}, |
| 6 | avgOnly=false, |
| 7 | alpha=0.01, |
| 8 | lcl='Precio_LCL99', |
| 9 | ucl='Precio_UCL99', |
| 10 | seed=1234; |
| 11 | RUN; |
| 12 | QUIT; |
| 1 | PROC CAS; |
| 2 | TABLE.columnInfo / TABLE={name='precios_distribucion_completa'}; |
| 3 | TABLE.numRows / TABLE={name='precios_distribucion_completa'}; |
| 4 | RUN; |
| 5 | QUIT; |
La tabla de salida `precios_distribucion_completa` contiene múltiples filas por cada observación de entrada, cada una correspondiendo a una predicción de una muestra MCMC diferente. Esto permite a los analistas construir una distribución de probabilidad completa para el precio de la energía, visualizar la incertidumbre y tomar decisiones de trading más robustas y basadas en el riesgo.