Scénario de test & Cas d'usage
Aprendizaje automático automatizado (AutoML) y generación de pipelines.
Descubrir todas las acciones de dataSciencePilotCrea una tabla de pacientes ('pacientes_calidad') con datos médicos. Se simulan varios casos: registros completos, registros con ausencias esporádicas, y registros donde un grupo de variables de diagnóstico ('PRESION_ARTERIAL', 'GLUCOSA', 'COLESTEROL') están todas ausentes. También se incluye una columna ('NOTAS_OBSERVADOR') completamente vacía.
| 1 | DATA mycas.pacientes_calidad; |
| 2 | LENGTH ID_PACIENTE $10 NOTAS_OBSERVADOR $50; |
| 3 | call streaminit(42); |
| 4 | DO i = 1 to 100; |
| 5 | ID_PACIENTE = 'PAC_' || put(i, z3.); |
| 6 | /* Caso 1: Completo */ |
| 7 | IF i <= 50 THEN DO; PRESION_ARTERIAL=120; GLUCOSA=90; COLESTEROL=200; END; |
| 8 | /* Caso 2: Ausencias esporádicas */ |
| 9 | ELSE IF i > 50 and i <= 80 THEN DO; |
| 10 | IF rand('UNIFORM') < 0.3 THEN call missing(PRESION_ARTERIAL); ELSE PRESION_ARTERIAL=140; |
| 11 | IF rand('UNIFORM') < 0.3 THEN call missing(GLUCOSA); ELSE GLUCOSA=110; |
| 12 | IF rand('UNIFORM') < 0.3 THEN call missing(COLESTEROL); ELSE COLESTEROL=240; |
| 13 | END; |
| 14 | /* Caso 3: Todas las métricas ausentes */ |
| 15 | ELSE DO; |
| 16 | call missing(PRESION_ARTERIAL, GLUCOSA, COLESTEROL); |
| 17 | END; |
| 18 | call missing(NOTAS_OBSERVADOR); |
| 19 | OUTPUT; |
| 20 | END; |
| 21 | RUN; |
| 1 | PROC CAS; |
| 2 | dataSciencePilot.analyzeMissingPatterns / |
| 3 | TABLE={name='pacientes_calidad'}, |
| 4 | casOut={name='patrones_calidad_out', replace=true}; |
| 5 | RUN; |
| 6 | QUIT; |
| 1 | PROC CAS; |
| 2 | TABLE.fetch / |
| 3 | TABLE={name='patrones_calidad_out', |
| 4 | where="_F_PRESION_ARTERIAL_='Y' and _F_GLUCOSA_='Y' and _F_COLESTEROL_='Y'"}; |
| 5 | RUN; |
| 6 | QUIT; |
La tabla de salida 'patrones_calidad_out' debe identificar y cuantificar correctamente todos los patrones de ausencia. La consulta en el paso 2 debe devolver una fila que represente el patrón donde 'PRESION_ARTERIAL', 'GLUCOSA' y 'COLESTEROL' están ausentes, con una frecuencia ('_FREQ_') que coincida con el número de registros creados para ese caso (20). El análisis también debe manejar sin problemas la columna 'NOTAS_OBSERVADOR' que está completamente vacía.