Scénario de test & Cas d'usage
Création d'un historique d'achats sur 5 clients. Certains suivent le chemin TV->Son, d'autres non.
| 1 | DATA casuser.retail_history; |
| 2 | LENGTH client_id $5 produit $10 date_achat 8; |
| 3 | INPUT client_id $ date_achat produit $; |
| 4 | DATALINES; |
| 5 | C1 10 TV |
| 6 | C1 20 BARRE_SON |
| 7 | C1 25 CABLE_HDMI |
| 8 | C2 12 TV |
| 9 | C2 40 BARRE_SON |
| 10 | C3 5 FRIGO |
| 11 | C3 15 MICROONDE |
| 12 | C4 10 TV |
| 13 | C4 11 BARRE_SON |
| 14 | C5 30 TV |
| 15 | ; |
| 16 | RUN; |
| 17 |
| 1 | |
| 2 | PROC CAS; |
| 3 | |
| 4 | TABLE.tableInfo / TABLE="retail_history" caslib="casuser"; |
| 5 | |
| 6 | RUN; |
| 7 |
| 1 | PROC CAS; |
| 2 | sequence.cspade / |
| 3 | TABLE={name="retail_history", caslib="casuser"}, |
| 4 | sequenceId="client_id", |
| 5 | eventId="date_achat", |
| 6 | itemId="produit", |
| 7 | support=0.4, |
| 8 | casout={name="patterns_retail", caslib="casuser", replace=true}; |
| 9 | RUN; |
| 10 | QUIT; |
La table de sortie 'patterns_retail' doit contenir la séquence 'TV -> BARRE_SON' car elle apparaît chez 3 clients sur 5 (60%), ce qui est supérieur au support de 0.4. Le client C5 (TV seule) et C3 (Frigo) ne contribuent pas à ce motif.