Scénario de test & Cas d'usage
Modèles d'arbres de régression additive bayésienne.
Découvrir toutes les actions de bartCréation d'une table de clients avec des données démographiques, un historique d'achat et une variable cible binaire indiquant la réponse à la dernière campagne.
| 1 | DATA casuser.MarketingResponse_fr; |
| 2 | call streaminit(456); |
| 3 | DO client_id = 1 to 5000; |
| 4 | age = 25 + floor(rand('Uniform') * 45); |
| 5 | revenu_annuel = 25000 + floor(rand('Uniform') * 100000); |
| 6 | depenses_an_passe = 50 + floor(rand('Uniform') * 2000); |
| 7 | IF rand('Uniform') < 0.3 THEN segment_client = 'Occasionnel'; |
| 8 | ELSE IF rand('Uniform') < 0.8 THEN segment_client = 'Fidele'; |
| 9 | ELSE segment_client = 'Premium'; |
| 10 | |
| 11 | logit = -3 + (age / 20) - (revenu_annuel / 80000) + (depenses_an_passe / 1000); |
| 12 | IF segment_client = 'Fidele' THEN logit = logit + 0.8; |
| 13 | IF segment_client = 'Premium' THEN logit = logit + 1.5; |
| 14 | |
| 15 | prob_reponse = cdf('Normal', logit); |
| 16 | IF rand('Uniform') < prob_reponse THEN a_repondu = 1; |
| 17 | ELSE a_repondu = 0; |
| 18 | |
| 19 | OUTPUT; |
| 20 | END; |
| 21 | RUN; |
| 1 | |
| 2 | PROC CASUTIL; |
| 3 | load |
| 4 | DATA=casuser.MarketingResponse_fr casout='MarketingResponse_fr' replace; |
| 5 | QUIT; |
| 6 |
| 1 | PROC CAS; |
| 2 | bart.bartProbit TABLE={name='MarketingResponse_fr'}, |
| 3 | target='a_repondu', |
| 4 | inputs={'age', 'revenu_annuel', 'depenses_an_passe', 'segment_client'}, |
| 5 | class={'segment_client'}, |
| 6 | nTree=150, |
| 7 | nBI=500, |
| 8 | nMC=1000, |
| 9 | seed=12345, |
| 10 | partByFrac={test=0.3, seed=54321}, |
| 11 | store={name='bart_marketing_model', replace=true}; |
| 12 | RUN; |
| 13 | QUIT; |
| 1 | PROC CAS; |
| 2 | TABLE.tableInfo / caslib='CASUSER'; |
| 3 | RUN; |
| 4 | QUIT; |
L'action s'exécute sans erreur. Les tables de résultats montrent les statistiques d'ajustement pour les partitions d'entraînement et de test. La table 'bart_marketing_model' est créée et visible dans la caslib CASUSER, prête à être utilisée pour le scoring de nouveaux clients.