Scénario de test & Cas d'usage
Modelos de árboles de regresión aditiva bayesiana.
Descubrir todas las acciones de bartCrea una tabla de pacientes ('datos_pacientes') donde las variables 'colesterol_hdl' y 'prueba_especial' contienen valores faltantes (representados por '.') en aproximadamente el 20% de los casos. La variable objetivo es 'enfermedad'.
| 1 | DATA casuser.datos_pacientes(caslib='casuser'); |
| 2 | call streaminit(99); |
| 3 | DO i = 1 to 2000; |
| 4 | presion_sistolica = 100 + floor(rand('UNIFORM') * 80); |
| 5 | colesterol_hdl = 30 + floor(rand('UNIFORM') * 60); |
| 6 | prueba_especial = 0.1 + rand('UNIFORM') * 2.5; |
| 7 | IF rand('UNIFORM') < 0.2 THEN call missing(colesterol_hdl); |
| 8 | IF rand('UNIFORM') < 0.2 THEN call missing(prueba_especial); |
| 9 | log_odds = -3 + (presion_sistolica/50) - (colesterol_hdl/30) + (prueba_especial*0.8); |
| 10 | IF missing(colesterol_hdl) THEN log_odds = log_odds + 0.5; |
| 11 | prob = 1 / (1 + exp(-log_odds)); |
| 12 | enfermedad = rand('BERNOULLI', prob); |
| 13 | OUTPUT; |
| 14 | END; |
| 15 | RUN; |
| 1 | |
| 2 | PROC CASUTIL; |
| 3 | load |
| 4 | DATA=casuser.datos_pacientes casout='datos_pacientes' replace; |
| 5 | QUIT; |
| 6 |
| 1 | PROC CAS; |
| 2 | ACTION bart.bartProbit / |
| 3 | TABLE={name='datos_pacientes'}, |
| 4 | target='enfermedad', |
| 5 | inputs={'presion_sistolica', 'colesterol_hdl', 'prueba_especial'}, |
| 6 | missing='SEPARATE', |
| 7 | seed=100; |
| 8 | RUN; |
| 1 | PROC CAS; |
| 2 | ACTION bart.bartProbit / |
| 3 | TABLE={name='datos_pacientes'}, |
| 4 | target='enfermedad', |
| 5 | inputs={'presion_sistolica', 'colesterol_hdl', 'prueba_especial'}, |
| 6 | missing='NONE', |
| 7 | seed=100; |
| 8 | RUN; |
El primer modelo (missing='SEPARATE') debe utilizar las 2000 observaciones, como se indica en la tabla 'Número de Observaciones' de los resultados. El segundo modelo (missing='NONE') debe utilizar un número significativamente menor de observaciones (aproximadamente 1280, dado el 20% de faltantes en dos variables independientes). La comparación de los resultados de ambos modelos permite al analista decidir si la información contenida en la 'ausencia' de un valor es predictiva y si vale la pena incluir esas observaciones.