sequence cspade

Analyse von Web-Clickstreams mit Zeitbeschränkungen

Scénario de test & Cas d'usage

Geschäftskontext

Ein Medienportal analysiert Navigationspfade. Es ist wichtig zu filtern, wie schnell Benutzer zwischen Seiten wechseln. Wir suchen nach Sequenzen, bei denen der nächste Klick nicht sofort (minGap), aber innerhalb eines kurzen Zeitfensters (maxGap) erfolgt, um 'echtes' Lesen von versehentlichen Klicks zu unterscheiden.
Datenaufbereitung

Simulation von 1000 Web-Sessions mit Zeitstempeln und besuchten Seiten (Home, News, Sport, Wetter).

Kopiert!
1 
2DATA casuser.web_logs;
3call streaminit(123);
4DO session_id = 1 to 1000;
5t = 0;
6DO i = 1 to rand('integer', 3, 8);
7t = t + rand('integer', 1, 30);
8p_num = rand('integer', 1, 4);
9IF p_num=1 THEN page='Home';
10ELSE IF p_num=2 THEN page='News';
11ELSE IF p_num=3 THEN page='Sport';
12ELSE page='Wetter';
13OUTPUT;
14END;
15END;
16 
17RUN;
18 

Étapes de réalisation

1
Ausführung von cSpade auf dem größeren Datensatz mit Definition von Zeitabständen (minGap=2, maxGap=20).
Kopiert!
1 
2PROC CAS;
3sequence.cspade / TABLE={name="web_logs"} sequenceId="session_id" eventId="t" itemId="page" minGap=2 maxGap=20 support=0.1 casout={name="click_sequences", replace=true};
4 
5RUN;
6 
2
Abruf der Top 5 der häufigsten Navigationspfade.
Kopiert!
1 
2PROC CAS;
3TABLE.fetch / TABLE={name="click_sequences"} sortBy=[{name="Support", order="DESCENDING"}] to=5;
4 
5RUN;
6 

Erwartetes Ergebnis


Die Aktion verarbeitet erfolgreich 1000 Sitzungen. Die Ergebnistabelle enthält nur Sequenzen, bei denen der Zeitabstand zwischen Klicks zwischen 2 und 20 Einheiten liegt. Sehr schnelle Klicks (Abstand < 2) werden ignoriert.