Le script utilise le jeu de données 'baseball' provenant de la bibliothèque standard 'sashelp', qui est intrinsèquement disponible dans SAS.
1 Bloc de code
Configuration CAS
Explication : Ce bloc configure l'accès à CAS. Il crée une bibliothèque SAS ('CASWORK') pointant vers une caslib CAS ('casuser'), définit cette bibliothèque comme emplacement par défaut pour les tables à un seul niveau, et assigne toutes les caslibs disponibles à la session SAS. La macro '%put &_sessref_;' affiche l'identifiant de la session CAS active.
Copié !
libname CASWORK cas caslib=casuser;
options USER = CASWORK;
caslib _all_ assign;
%put &_sessref_;
1
LIBNAME CASWORK cas caslib=casuser;
2
options USER = CASWORK;
3
caslib _all_ assign;
4
%put &_sessref_;
2 Bloc de code
DATA STEP Data
Explication : Ce DATA Step charge le jeu de données 'baseball' de la bibliothèque 'sashelp' (une bibliothèque SAS par défaut) vers une nouvelle table CAS nommée 'baseball' dans la caslib 'caswork'. Il crée également une nouvelle variable 'row_id' qui est une séquence numérique unique pour chaque ligne ('_n_'). Cette variable est cruciale pour garantir la reproductibilité dans un environnement distribué.
Copié !
data caswork.baseball;
set sashelp.baseball;
row_id=_n_;
run;
1
DATA caswork.baseball;
2
SET sashelp.baseball;
3
row_id=_n_;
4
RUN;
3 Bloc de code
DATA STEP Data
Explication : Ce DATA Step traite la table CAS 'caswork.baseball'. L'instruction BY spécifie le tri par 'div', 'team' et l'identifiant unique 'row_id'. L'expression 'if first.team then output;' sélectionne uniquement la première observation pour chaque combinaison unique de 'team'. L'inclusion de 'row_id' dans l'instruction BY assure que, même dans un environnement CAS distribué où l'ordre des lignes peut varier entre les nœuds, la sélection du 'first.team' reste déterministe et reproductible.
Copié !
data caswork.nodup;
set caswork.baseball;
by div team row_id ;
if first.team then output;
run;
1
DATA caswork.nodup;
2
SET caswork.baseball;
3
BY div team row_id ;
4
IF first.team THENOUTPUT;
5
RUN;
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.
« Ne supposez jamais que vos données sont triées dans CAS. Si votre logique métier dépend de l'ordre des observations, créez systématiquement une clé de séquence lors du chargement initial. »
SAS et tous les autres noms de produits ou de services de SAS Institute Inc. sont des marques déposées ou des marques de commerce de SAS Institute Inc. aux États-Unis et dans d'autres pays. ® indique un enregistrement aux États-Unis. WeAreCAS est un site communautaire indépendant et n'est pas affilié à SAS Institute Inc.
Ce site utilise des cookies techniques et analytiques pour améliorer votre expérience.
En savoir plus.