modelMatrix
Description
L'action regression.modelMatrix crée une table sur le serveur CASMoteur analytique "in-memory" de SAS Viya. Il traite les données en parallèle (MPP) sur plusieurs nœuds pour offrir une puissance de calcul massive et une exécution ultra-rapide des actions. contenant la matrice de plan (design matrix) associée à une spécification de modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). donnée. C'est l'outil parfait pour transformer vos variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage. brutes avant de les injecter dans un modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). complexe, un peu comme tailler ses légumes avant de cuisiner une recette étoilée ! Vous pouvez consulter la documentation officielle ici : .
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| table | Spécifie la table d'entrée contenant les données à analyser. |
| model | Définit la variable dépendante (cible), les effets explicatifs et les options du modèle (interactions, suppression de l'intercept, etc.). |
| class | Liste des variables de classification (catégorielles) à utiliser comme variables explicatives. |
| output | Définit les paramètres de la table de sortie contenant la matrice de plan générée (via casOut) et les variables de la table source à conserver (via copyVars). |
| inputs | Spécifie les variables continues à utiliser pour l'analyse (alternative à la spécification dans model.effects). |
Préparation des données
Création de données simulées pour l'action modelMatrix
Créons une petite table de données d'achat avec des variables catégorielles et continues pour voir notre matrice prendre vie.
| 1 | DATA casuser.achats; |
| 2 | INPUT id age genre $ montant; |
| 3 | DATALINES; |
| 4 | 1 25 M 150.5 |
| 5 | 2 34 F 200.0 |
| 6 | 3 45 M 50.0 |
| 7 | 4 22 F 310.2 |
| 8 | 5 54 M 120.0 |
| 9 | ; |
| 10 | RUN; |
Exemples d'utilisation
Génération basique d'une matrice de plan
Cet exemple montre comment transformer nos variables explicatives en une matrice de plan complète, en gérant automatiquement la variable catégorielle 'genre' en indicatrices (dummy variables).
| 1 | PROC CAS; |
| 2 | regression.modelMatrix / |
| 3 | TABLE={name="achats", caslib="casuser"} |
| 4 | class={"genre"} |
| 5 | model={depVars={{name="montant"}}, effects={{vars={"age", "genre"}}}} |
| 6 | OUTPUT={casOut={name="matrice_design", caslib="casuser", replace=true}, copyVars={"id"}}; |
| 7 | RUN; |
| 8 | QUIT; |
Résultat Attendu :
Génération avec effets d'interaction et exclusion de l'ordonnée à l'origine
On va plus loin ! Ici, on inclut une interaction entre 'age' et 'genre' (grâce à l'option interaction="CROSS") et on s'assure que le modèle n'inclut pas l'ordonnée à l'origine avec 'noint=true'.
| 1 | PROC CAS; |
| 2 | regression.modelMatrix / |
| 3 | TABLE={name="achats", caslib="casuser"} |
| 4 | class={"genre"} |
| 5 | model={depVars={{name="montant"}}, effects={{vars={"age"}}, {vars={"genre"}}, {vars={"age", "genre"}, interaction="CROSS"}}, noint=true} |
| 6 | OUTPUT={casOut={name="matrice_interact", caslib="casuser", replace=true}, copyVars="ALL"}; |
| 7 | RUN; |
| 8 | QUIT; |