sequence cspade

Protocolos Médicos Complejos y Límites de Secuencia

Scénario de test & Cas d'usage

Contexto empresarial

Un hospital investiga la progresión de tratamientos. Se busca detectar combinaciones de medicamentos administrados, pero forzando límites estrictos en la longitud de la cadena para simplificar el análisis (evitar cadenas infinitas) y manejando datos complejos (varios medicamentos el mismo día).
Preparación de datos

Datos de tratamientos pacientes con múltiples medicamentos por visita.

¡Copiado!
1DATA casuser.tratamientos; INPUT paciente_id dia_tratamiento medicamento $; DATALINES;
2901 1 ASPIRINA
3901 1 VITAMINA
4901 2 ANTIBIOTICO
5901 3 JARABE
6902 1 ASPIRINA
7902 2 ANTIBIOTICO
8902 3 CALMANTE
9902 4 JARABE
10903 1 ASPIRINA
11903 1 VITAMINA
12903 2 ANTIBIOTICO
13; RUN;

Étapes de réalisation

1
Ejecución con límites de longitud (MaxLen) y tamaño de ítem (MaxSize), y conteo mínimo de soporte.
¡Copiado!
1PROC CAS;
2 sequence.cspade /
3 TABLE={name="tratamientos", caslib="casuser"}
4 sequenceId="paciente_id"
5 eventId="dia_tratamiento"
6 itemId="medicamento"
7 support=0.1
8 supportCnt=2
9 maxLen=3
10 maxSize=1
11 casout={name="proto_cortos", caslib="casuser", replace=true};
12QUIT;

Resultado esperado


El resultado debe truncar las secuencias que excedan 3 pasos (maxLen=3). Aunque el paciente 902 tiene 4 pasos, solo se considerarán las subsecuencias de hasta 3. Además, 'maxSize=1' forzará a considerar solo un medicamento por día si hubiese agrupación compleja, probando la robustez de la acción ante restricciones dimensionales fuertes.