Analyse de données CAS

SAS Viya : Comment calculer des taux de qualification avec l'action freqTab de CAS

Ce code est également disponible en : Deutsch English Español
Niveau de difficulté
Débutant
Publié le :
Stéphanie

Le Conseil de l'Expert

Stéphanie
Spécialiste Machine Learning et IA.

Si vous avez besoin de calculer plusieurs ratios (ex: qualifiés vs non-qualifiés vs dossiers en attente), vous pouvez créer plusieurs variables de poids (Count_Qualif, Count_Pending, etc.) dans le même DATA step. Vous pourrez ensuite lancer plusieurs analyses de fréquences successives sur la même table sans jamais avoir à recharger les données en mémoire

L'exemple se déroule en deux étapes. Premièrement, un DATA step est utilisé pour créer une nouvelle table `mycaslib.qualifyapps` basée sur une table existante `mycaslib.creditqualify`. Une nouvelle variable `Count` est ajoutée, prenant la valeur 0 si 'Credit_Qualification' est 'N/A' et 1 sinon. Deuxièmement, l'action `freqTab.freqTab` de PROC CAS est employée pour générer un tableau de fréquences de la variable 'Credit_Qualification', en utilisant la variable 'Count' comme pondération. Cela permet de déterminer le pourcentage de personnes qualifiées pour le crédit.
Analyse des données

Type : CREATION_INTERNE


Les exemples utilisent des données (mycaslib.creditqualify) qui sont censées exister dans la bibliothèque CAS 'mycaslib'. La première étape crée une nouvelle table (mycaslib.qualifyapps) à partir de celle-ci, pour être utilisée dans la seconde étape. Pour rendre l'exemple autonome, la table 'mycaslib.creditqualify' devrait être créée ou être un jeu de données SASHELP.

1 Bloc de code
DATA STEP Data
Explication :
Ce code DATA step crée une nouvelle table nommée `mycaslib.qualifyapps`. Il lit les données de `mycaslib.creditqualify` et ajoute une variable `Count`. Si la 'Credit_Qualification' est 'N/A', `Count` est défini à 0; sinon, `Count` est défini à 1.
Copié !
1DATA mycaslib.qualifyapps;
2 SET mycaslib.creditqualify;
3 IF Credit_Qualification='N/A' THEN Count=0;
4 ELSE Count=1;
5RUN;
2 Bloc de code
PROC CAS
Explication :
Cette section utilise l'action `freqTab.freqTab` de PROC CAS pour générer un tableau de fréquences. Elle prend la table `qualifyapps` créée précédemment, utilise la variable `Count` comme pondération et calcule les fréquences pour la variable `Credit_Qualification`. Cela permet d'obtenir la répartition des qualifications de crédit.
Copié !
1PROC CAS;
2 ACTION freqTab.freqTab/
3 TABLE='qualifyapps',
4 weight='Count',
5 tabulate={'Credit_Qualification'};
6QUIT;
L'Astuce Pro
Pour maximiser l efficacite de l action freqTab.freqTab sur de gros volumes de donnees, utilisez le parametre weight (ici la variable Count) pour exclure logiquement les observations sans avoir a supprimer physiquement les lignes de la table CAS, mais gardez a l esprit que contrairement a une PROC FREQ classique, l action CAS ne prend pas en charge l instruction WHERE de maniere native dans l appel de l action sans passer par le sous-parametre table={where='condition'}.
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : Copyright © SAS Institute Inc. All Rights Reserved


Documentation liée

Aucune documentation spécifique pour cette catégorie.