Les exemples utilisent des données générées (datalines) pour assurer leur autonomie. La table 'cholesterol' est créée et chargée en mémoire CAS pour les démonstrations de sauvegarde.
1 Bloc de code
DATA STEP / PROC CAS Data
Explication : Cet exemple crée une table SAS simple en utilisant une étape DATA avec DATALINES, la charge en mémoire CAS, puis la sauvegarde en tant que fichier SAS7BDAT dans la caslib 'casuser' sans aucune option de chiffrement. La commande 'fileinfo' permet de vérifier que le fichier a bien été créé.
Copié !
data work.cholesterol;
input Name $ Age Sex $ Cholesterol_Level;
datalines;
John_Doe 45 M 200
Jane_Smith 30 F 180
Peter_Jones 55 M 240
Alice_Brown 25 F 160
;
run;
cas casauto sessopts=(caslib="casuser");
proc cas;
table.upload /
caslib="casuser",
path="cholesterol",
casout={name="cholesterol", replace=true};
table.save /
table="cholesterol",
name="cholesterol_basic.sas7bdat",
exportOptions={fileType="basesas"},
replace=true;
quit;
proc cas;
table.fileinfo / caslib="casuser" pattern="cholesterol_basic.sas7bdat";
quit;
Explication : Ce cas reproduit l'exemple de la documentation. Il crée la table 'cholesterol', la charge en mémoire CAS, puis la sauvegarde en tant que fichier SAS7BDAT chiffré avec l'algorithme AES2 et un mot de passe spécifié. La commande 'fileinfo' permet de vérifier que le fichier a bien été créé.
Copié !
data work.cholesterol;
input Name $ Age Sex $ Cholesterol_Level;
datalines;
John_Doe 45 M 200
Jane_Smith 30 F 180
Peter_Jones 55 M 240
Alice_Brown 25 F 160
;
run;
cas casauto sessopts=(caslib="casuser");
proc cas;
table.upload /
caslib="casuser",
path="cholesterol",
casout={name="cholesterol", replace=true};
table.save /
table="cholesterol",
name="cholesterol_encr.sas7bdat",
exportOptions={
fileType="basesas",
encrypt="AES2",
encryptionPassword="pasquotank"
},
replace=true;
quit;
proc cas;
table.fileinfo / caslib="casuser" pattern="cholesterol_encr.sas7bdat";
quit;
Explication : Cet exemple illustre une utilisation plus avancée en sauvegardant un sous-ensemble de données (ici, les enregistrements où Cholesterol_Level est supérieur à 200) dans un format différent, à savoir CSV. Le paramètre 'where' est utilisé pour le filtrage et 'exportOptions={fileType="csv"}' pour le format de sortie. La commande 'fileinfo' permet de vérifier que le fichier a bien été créé.
Copié !
data work.cholesterol;
input Name $ Age Sex $ Cholesterol_Level;
datalines;
John_Doe 45 M 200
Jane_Smith 30 F 180
Peter_Jones 55 M 240
Alice_Brown 25 F 160
;
run;
cas casauto sessopts=(caslib="casuser");
proc cas;
table.upload /
caslib="casuser",
path="cholesterol",
casout={name="cholesterol", replace=true};
table.save /
table="cholesterol",
where="Cholesterol_Level > 200",
name="cholesterol_filtered.csv",
exportOptions={fileType="csv"},
replace=true;
quit;
proc cas;
table.fileinfo / caslib="casuser" pattern="cholesterol_filtered.csv";
quit;
Explication : Cet exemple montre comment créer une caslib temporaire ('my_temp_caslib') et y sauvegarder la table 'cholesterol'. Cela est utile pour gérer les données entre différents espaces de stockage CAS ou pour préparer des données pour une utilisation externe à la caslib d'origine. La caslib temporaire est supprimée à la fin de l'exécution pour le nettoyage. La commande 'fileinfo' permet de vérifier que le fichier a bien été créé.
Copié !
data work.cholesterol;
input Name $ Age Sex $ Cholesterol_Level;
datalines;
John_Doe 45 M 200
Jane_Smith 30 F 180
Peter_Jones 55 M 240
Alice_Brown 25 F 160
;
run;
cas casauto sessopts=(caslib="casuser");
proc cas;
table.upload /
caslib="casuser",
path="cholesterol",
casout={name="cholesterol", replace=true};
caslib.add /
caslib="my_temp_caslib",
path="/tmp/my_temp_data",
subdirs=true,
global=false,
dataSource={srcType="path"};
table.save /
table="cholesterol",
caslib="my_temp_caslib", /* Spécifie la caslib de destination */
name="cholesterol_remote.sas7bdat",
exportOptions={fileType="basesas"},
replace=true;
quit;
proc cas;
table.fileinfo / caslib="my_temp_caslib" pattern="cholesterol_remote.sas7bdat";
caslib.drop / caslib="my_temp_caslib" quiet=true;
quit;
1
DATA work.cholesterol;
2
INPUT Name $ Age Sex $ Cholesterol_Level;
3
DATALINES;
4
John_Doe 45 M 200
5
Jane_Smith 30 F 180
6
Peter_Jones 55 M 240
7
Alice_Brown 25 F 160
8
;
9
RUN;
10
11
cas casauto sessopts=(caslib="casuser");
12
13
PROC CAS;
14
TABLE.upload /
15
caslib="casuser",
16
path="cholesterol",
17
casout={name="cholesterol", replace=true};
18
19
caslib.add /
20
caslib="my_temp_caslib",
21
path="/tmp/my_temp_data",
22
subdirs=true,
23
global=false,
24
dataSource={srcType="path"};
25
26
TABLE.save /
27
TABLE="cholesterol",
28
caslib="my_temp_caslib", /* Spécifie la caslib de destination */
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.
« Dans l'écosystème SAS Viya, la distinction entre les données en mémoire (In-Memory) et les fichiers physiques est fondamentale. L'action table.save du langage CASL est le mécanisme privilégié pour rendre vos résultats persistants. Son intérêt majeur réside dans sa polyvalence : elle permet non seulement d'exporter des tables CAS vers le format historique .sas7bdat, mais aussi d'appliquer des couches de sécurité critiques dès l'écriture. En utilisant le paramètre exportOptions avec l'option fileType="basesas", vous pouvez activer un chiffrement robuste de type AES2. C'est une pratique d'excellence pour garantir la confidentialité des données sensibles (comme les niveaux de cholestérol dans cet exemple) une fois qu'elles quittent l'environnement sécurisé de la mémoire vive pour être stockées sur disque. »
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.