Scénario de test & Cas d'usage
Création d'un panel de 50 machines suivies sur 24 mois. Introduction de valeurs manquantes (.) aléatoires dans la variable explicative 'temperature'.
| 1 | |
| 2 | DATA mycas.maintenance_panel; |
| 3 | call streaminit(777); |
| 4 | DO machine_id = 1 to 50; |
| 5 | DO mois = 1 to 24; |
| 6 | temperature = rand('Normal', 60, 5); |
| 7 | IF rand('Uniform') < 0.1 THEN temperature = .; |
| 8 | pannes = rand('Poisson', 1 + 0.05 * (temperature - 60)); |
| 9 | OUTPUT; |
| 10 | END; |
| 11 | END; |
| 12 | |
| 13 | RUN; |
| 14 |
| 1 | |
| 2 | PROC CAS; |
| 3 | countreg.countregFitModel / TABLE={name='maintenance_panel'}, model={depVars={{name='pannes'}}, effects={{vars={'temperature'}}}}, groupid='machine_id', modelOptions={modelType='POISSON'}, errorcomp={type='FIXED'}; |
| 4 | |
| 5 | RUN; |
| 6 |
L'action ne doit pas planter. Elle doit identifier la structure de panel via 'groupid'. Les observations contenant des valeurs manquantes pour 'temperature' doivent être ignorées silencieusement ou signalées dans le log, mais le modèle doit être calculé sur les données complètes restantes.