regression

genmod

##set_regression

Description

L'action genmod est le véritable couteau suisse de la modélisationProcessus de création de structures mathématiques ou statistiques sur SAS Viya pour prédire des comportements, classifier des données ou identifier des tendances à partir de jeux de données CAS. statistique dans SAS Viya. Elle permet d'ajuster des modèles linéaires généralisés (GLM) , ce qui signifie qu'elle ne se laisse pas intimider par des données qui ne suivent pas une loi normale. Que vous travailliez sur des taux de pannes (Gamma), des comptages d'accidents (PoissonLoi de probabilité discrète modélisant le nombre d'événements indépendants survenant dans un intervalle fixe (temps/espace), définie par un paramètre de moyenne égal à la variance.) ou des probabilités de clic (Logistique), genmod orchestre vos analyses avec une précision chirurgicale. Elle gère même les mesures répétées via les équations d'estimation généralisées (GEE), parfait pour suivre l'évolution de vos données dans le temps sans perdre le nord.

Syntaxe Officielle
regression.genmod /
table={caslib="string", name="table-name", where="expression"}
class={"variable-name-1", "variable-name-2"}
model={depVars={{name="target"}}, effects={{vars={"var1", "var2"}}}, dist="POISSON", link="LOG"}
selection={method="FORWARD" | "BACKWARD" | "STEPWISE" | "LASSO"}
output={casOut={name="output-table"}, pred="predicted_value"}
store={name="model_storage"}

Paramètres Clés

Nom du paramètre Description
table Spécifie la table de données CAS d'entrée contenant vos précieuses observations.
class Déclare les variables catégorielles (classification). Indispensable pour que SAS comprenne que 'Rouge' et 'Bleu' ne sont pas des nombres.
model Le cœur du réacteur : définit la variable cible (depVars), les variables explicatives (effects), ainsi que la distribution (dist) et la fonction de lien (link).
selection Active la sélection automatique des variables pour éviter de sur-ajuster votre modèle avec des données inutiles.
dist Définit la loi de probabilité de votre variable cible (ex: Poisson, Binomial, Gamma, Tweedie).
link Spécifie la fonction de lien mathématique reliant la moyenne à la partie linéaire du modèle (ex: Logit, Log, Identité).
output Permet de créer une table de sortie contenant des statistiques par observation comme les prédictions ou les résidus.
repeated Active l'analyse pour les données corrélées (mesures répétées) en utilisant la méthode GEE .
store Sauvegarde votre modèle durement entraîné dans une table binaire pour une utilisation future (scoring).

Préparation des données

Création de données de réclamations d'assurance

Ce code génère un jeu de données fictif simulant des réclamations d'assurance pour tester une régression de Poisson.

1DATA casuser.insurance_data;
2 INPUT AgeGroup $ Region $ Exposure Claims;
3 DATALINES;
4Jeune Nord 100 12
5Jeune Sud 150 18
6Adulte Nord 200 10
7Adulte Sud 250 15
8Senior Nord 180 5
9Senior Sud 210 8
10;
11RUN;

Exemples d'utilisation

Régression de Poisson simple

Ajuste un modèle de base pour prédire le nombre de réclamations en fonction du groupe d'âge.

1PROC CAS; regression.genmod / TABLE={name="insurance_data"} model={depVars={{name="Claims"}}, effects={{vars={"AgeGroup"}}}, dist="POISSON", link="LOG"}; RUN;
Résultat Attendu :
Un rapport contenant les estimations des paramètres et les statistiques de fit du modèle.
Modèle logistique avec sélection de variables et sauvegarde

Un exemple complet incluant la déclaration des classes, une sélection 'Forward' et l'exportation du modèle pour le futur.

1PROC CAS; regression.genmod / TABLE={name="insurance_data"} class={"AgeGroup", "Region"} model={depVars={{name="Claims"}}, effects={{vars={"AgeGroup", "Region"}}}, dist="POISSON", link="LOG"} selection={method="FORWARD", details="SUMMARY"} OUTPUT={casOut={name="scored_data", replace=true}, pred="P_Claims"} store={name="my_genmod_model", replace=true}; RUN;
Résultat Attendu :
Le modèle est ajusté, les variables sont sélectionnées, une table de prédictions 'scored_data' est créée et le modèle est stocké dans 'my_genmod_model'.
Analyse de mesures répétées (GEE)

Utilisation du paramètre 'repeated' pour gérer les corrélations au sein d'un groupe (ex: par Région).

1PROC CAS; regression.genmod / TABLE={name="insurance_data"} class={"AgeGroup", "Region"} model={depVars={{name="Claims"}}, effects={{vars={"AgeGroup"}}}, dist="POISSON", link="LOG"} repeated={subject={{vars={"Region"}}}, corrType="EXCH"}; RUN;
Résultat Attendu :
Analyse GEE avec une structure de corrélation échangeable basée sur la variable de sujet 'Region'.