Scénario de test & Cas d'usage
Erstellt eine große Tabelle (100.000 Zeilen), die eine große Kundendatenbank simuliert. Enthält Merkmale wie Vertragslaufzeit, monatliche Kosten und genutzte Dienste.
| 1 | DATA mycas.kunden_daten_gross; |
| 2 | call streaminit(456); |
| 3 | DO KundenNr = 1 to 100000; |
| 4 | Vertragslaufzeit_Monate = 1 + floor(rand('UNIFORM') * 72); |
| 5 | MonatlicheKosten = 20 + rand('UNIFORM') * 100; |
| 6 | Anzahl_Dienste = 1 + floor(rand('UNIFORM') * 5); |
| 7 | OUTPUT; |
| 8 | END; |
| 9 | RUN; |
| 1 | |
| 2 | PROC CASUTIL; |
| 3 | load |
| 4 | DATA=mycas.kunden_daten_gross casout='kunden_daten_gross' replace; |
| 5 | RUN; |
| 6 |
| 1 | PROC CAS; |
| 2 | bart.bartScore / |
| 3 | restore={name='churn_modell_bart', caslib='mycas'}, |
| 4 | TABLE={name='kunden_daten_gross', caslib='mycas'}, |
| 5 | avgOnly=FALSE, |
| 6 | alpha=0.01, |
| 7 | lcl='Kredibilitätsgrenze_Unten_99', |
| 8 | ucl='Kredibilitätsgrenze_Oben_99', |
| 9 | copyVars={'KundenNr'}, |
| 10 | casOut={name='kunden_churn_details', caslib='mycas', replace=true}; |
| 11 | RUN; |
| 1 | |
| 2 | PROC CAS; |
| 3 | TABLE.columnInfo / TABLE={name='kunden_churn_details', caslib='mycas'}; |
| 4 | RUN; |
| 5 |
Die Aktion verarbeitet die große Datenmenge erfolgreich. Die Ausgabetabelle 'mycas.kunden_churn_details' ist signifikant breiter als die Eingabetabelle. Sie enthält die 'KundenNr', die durchschnittliche Vorhersage, die 99%-Kredibilitätsgrenzen und eine große Anzahl zusätzlicher Spalten, die die Vorhersage aus jeder einzelnen MCMC-Stichprobe darstellen. Dies bestätigt die Fähigkeit der Aktion, detaillierte und volumengroße Scoring-Aufgaben zu bewältigen.