Scénario de test & Cas d'usage
Datos de tratamientos pacientes con múltiples medicamentos por visita.
| 1 | DATA casuser.tratamientos; INPUT paciente_id dia_tratamiento medicamento $; DATALINES; |
| 2 | 901 1 ASPIRINA |
| 3 | 901 1 VITAMINA |
| 4 | 901 2 ANTIBIOTICO |
| 5 | 901 3 JARABE |
| 6 | 902 1 ASPIRINA |
| 7 | 902 2 ANTIBIOTICO |
| 8 | 902 3 CALMANTE |
| 9 | 902 4 JARABE |
| 10 | 903 1 ASPIRINA |
| 11 | 903 1 VITAMINA |
| 12 | 903 2 ANTIBIOTICO |
| 13 | ; RUN; |
| 1 | PROC 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}; |
| 12 | QUIT; |
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.