regression

logisticAssociation

Description

Calcule les indices de corrélation de rang entre les probabilités prédites et les réponses observées, utilisés pour évaluer la capacité prédictive d'un modèle de régression logistique.

regression.logisticAssociation <result=results> <status=rc> / accuracy="string", allStats=TRUE | FALSE, association=TRUE | FALSE, binEps=double, casOut={casouttable}, ctable=TRUE | FALSE, cutpt=double | {double-1 <, double-2, ...>}, display={displayTables}, fitData=TRUE | FALSE, fnf="string", fpf="string", lift="string", misclass="string", nocounts=TRUE | FALSE, npv="string", outputTables={outputTables}, pc="string", ppv="string", restore={castable}, table={castable}, tnf="string", tpf="string";
Paramètres
ParamètreDescription
accuracy Inclut et nomme la précision (accuracy) dans la table de classification.
allStats Lorsqu'il est défini sur True, demande toutes les statistiques disponibles.
association Lorsqu'il est défini sur True, crée la table d'association.
binEps Spécifie la précision des probabilités prédites qui sont utilisées pour la classification.
casOut Spécifie les paramètres pour une table de sortie.
ctable Crée la table de classification.
cutpt Spécifie les points de coupure pour la table de classification.
display Spécifie une liste de tables de résultats à envoyer au client pour affichage.
fitData Lorsqu'il est défini sur True, spécifie que les données à scorer ont également été utilisées pour ajuster le modèle.
fnf Inclut et nomme la fraction de faux négatifs dans la table de classification.
fpf Inclut et nomme la fraction de faux positifs (1-spécificité) dans la table de classification.
lift Inclut et nomme le lift dans la table de classification.
misclass Inclut et nomme le taux de mauvaise classification dans la table de classification.
nocounts Lorsqu'il est défini sur True, supprime les comptages de la table de classification.
npv Inclut et nomme la valeur prédictive négative dans la table de classification.
outputTables Liste les noms des tables de résultats à sauvegarder en tant que tables CAS sur le serveur.
pc Inclut et nomme le pourcentage de corrections dans la table de classification.
ppv Inclut et nomme la valeur prédictive positive (précision) dans la table de classification.
restore Restaure les modèles de régression à partir d'un objet binaire volumineux (BLOB).
table Spécifie la table de données d'entrée.
tnf Inclut et nomme la fraction de vrais négatifs (spécificité) dans la table de classification.
tpf Inclut et nomme la fraction de vrais positifs (rappel, sensibilité) dans la table de classification.
Préparation des Données Voir la fiche de ce code dataprep
Création des données de test

Crée une table CAS nommée 'getStarted' contenant des données pour un modèle de régression logistique. La variable 'y' est la variable dépendante binaire, et 'p' est un prédicteur.

Copié !
1DATA casuser.getStarted;
2DO i=1 to 100;
3 IF rand('UNIFORM') > 0.5 THEN y=1; ELSE y=0;
4 p = 0.4 + 0.2*y + 0.1*rand('NORMAL');
5 OUTPUT;
6END;
7RUN;

Exemples

Ajuste un modèle de régression logistique simple, puis calcule les statistiques d'association de base sur les données d'entraînement pour évaluer la performance du modèle.

Code SAS® / CAS Code en attente de validation par la communauté
Copié !
1PROC CAS;
2 regression.logistic DATA='getStarted' class={'y'} model={depvar='y', effects={'p'}}
3 store={name='myModel', replace=true};
4 RUN;
5 regression.logisticAssociation TABLE='getStarted' restore='myModel';
6 RUN;
7QUIT;
Résultat :
Affiche la table 'Association Statistics' qui contient les mesures de corrélation de rang entre les probabilités prédites et les réponses observées, incluant les paires concordantes, discordantes, et les indices C de Somers, Gamma, Tau-a et Goodman-Kruskal.

Après avoir ajusté un modèle logistique, cette exemple utilise `logisticAssociation` pour générer une table de classification détaillée avec plusieurs points de coupure (0.2, 0.4, 0.6, 0.8) et produit une table de sortie CAS ('roc_data') contenant les données nécessaires pour tracer une courbe ROC.

Code SAS® / CAS Code en attente de validation par la communauté
Copié !
1PROC CAS;
2 regression.logistic DATA='getStarted' class={'y'} model={depvar='y', effects={'p'}} store={name='myModel', replace=true};
3 RUN;
4 regression.logisticAssociation
5 TABLE='getStarted'
6 restore='myModel'
7 ctable=true
8 cutpt={0.2, 0.4, 0.6, 0.8}
9 pc='Pourcentage_Correct'
10 casOut={name='roc_data', replace=true};
11 RUN;
12QUIT;
Résultat :
Génère trois tables de résultats : 'Association Statistics' (statistiques d'association), 'Classification' (une table de classification détaillée pour chaque point de coupure spécifié avec une colonne nommée 'Pourcentage_Correct'), et 'OutputCasTables' qui confirme la création de la table CAS 'roc_data'.

FAQ

Quel est l'objectif de l'action 'logisticAssociation' dans SAS Viya ?
Quels sont les paramètres d'entrée principaux requis par l'action 'logisticAssociation' ?
Comment générer une table de classification avec cette action ?
Quelles sont les principales statistiques de performance de modèle que l'on peut obtenir ?
Est-il possible d'enregistrer les tables de résultats générées ?