Les exemples utilisent des données générées (datalines) ou SASHELP pour créer des modèles simples à des fins de démonstration, puis téléchargent ces modèles. Aucun fichier externe non fourni n'est requis.
1 Bloc de code
PROC ASTORE / DATA STEP Data
Explication : Cet exemple illustre le téléchargement le plus simple d'un modèle ASTORE. Il commence par la création d'un modèle logistique basique à partir du jeu de données SASHELP.IRIS, enregistré comme 'my_model' dans la caslib 'casuser'. Ensuite, la procédure ASTORE est appelée avec le sous-énoncé DOWNLOAD pour spécifier le modèle ASTORE ('rstore=casuser.my_model') et l'emplacement du fichier de destination sur le système de fichiers local ('save_file=/tmp/my_model.astore').
Copié !
/* Création d'un modèle simple pour démonstration */
data casuser.iris_data;
set sashelp.iris;
run;
proc logistic data=casuser.iris_data outmodel=casuser.my_model;
model Species = SepalLength SepalWidth PetalLength PetalWidth;
run;
/* Téléchargement du modèle ASTORE vers le système de fichiers local */
proc astore;
download rstore=casuser.my_model;
save_file='/tmp/my_model.astore';
run;
1
/* Création d'un modèle simple pour démonstration */
model Species = SepalLength SepalWidth PetalLength PetalWidth;
8
RUN;
9
10
/* Téléchargement du modèle ASTORE vers le système de fichiers local */
11
PROC ASTORE;
12
download rstore=casuser.my_model;
13
save_file='/tmp/my_model.astore';
14
RUN;
2 Bloc de code
PROC ASTORE / DATA STEP Data
Explication : Cet exemple étend le concept en montrant comment spécifier explicitement la caslib où le modèle ASTORE est enregistré. Un modèle GLMSELECT est créé et sauvegardé. Le sous-énoncé DOWNLOAD utilise l'option 'caslib=' pour assurer que le modèle est correctement identifié avant le téléchargement. Le fichier est ensuite sauvegardé sous '/tmp/auto_model.astore'.
Copié !
/* Création d'un autre modèle pour démonstration */
data casuser.cars_data;
set sashelp.cars;
where Make in ('Audi', 'BMW', 'Mercedes-Benz');
run;
proc glmselect data=casuser.cars_data outmodel=casuser.auto_model;
model Cylinders = Make Type Origin DriveTrain Weight Horsepower MSRP;
selection method=stepwise;
run;
/* Téléchargement du modèle ASTORE avec des options explicites */
proc astore;
download rstore=casuser.auto_model caslib=casuser;
save_file='/tmp/auto_model.astore';
run;
1
/* Création d'un autre modèle pour démonstration */
Explication : Cet exemple avancé montre l'utilisation de macro-variables pour le chemin de destination et inclut une vérification rudimentaire de l'accessibilité du chemin avant le téléchargement. Un modèle HPLOGISTIC est créé. Le chemin est défini par la macro-variable `download_path`. Un bloc DATA _NULL_ tente de créer et supprimer un fichier temporaire à l'emplacement spécifié pour vérifier si le répertoire existe et est accessible. Le téléchargement ne s'effectue que si la vérification est positive, fournissant un mécanisme de gestion d'erreur de base.
Copié !
/* Création d'un troisième modèle pour démonstration */
data casuser.heart_data;
set sashelp.heart;
where Status='Alive';
run;
proc hplogistic data=casuser.heart_data outmodel=casuser.heart_model;
model Cholesterol = Smoking_Status_N BP_Status_N Weight_Status_N;
run;
/* Définir le chemin de téléchargement via une macro-variable */
%let download_path = /tmp/models/heart_model.astore;
/* Vérifier l'existence du répertoire de destination et télécharger */
filename _tmp_dir temp;
data _null_;
rc = fcreate("&download_path", 'f');
if rc = 0 then do;
call symputx('dir_exists', '1');
rc = fdelete("&download_path");
end;
else call symputx('dir_exists', '0');
run;
%if &dir_exists. = 1 %then %do;
proc astore;
download rstore=casuser.heart_model caslib=casuser;
save_file="&download_path";
run;
%put Modèle 'heart_model' téléchargé avec succès vers &download_path.;
%end;
%else %do;
%put ERREUR: Le chemin de téléchargement '&download_path' est invalide ou le répertoire n'existe pas/n'est pas accessible.;
%end;
1
/* Création d'un troisième modèle pour démonstration */
%put Modèle 'heart_model' téléchargé avec succès vers &download_path.;
31
%END;
32
%ELSE %DO;
33
%put ERREUR: Le chemin de téléchargement '&download_path' est invalide ou le répertoire n'existe pas/n'est pas accessible.;
34
%END;
4 Bloc de code
PROC ASTORE / PROC CAS / DATA STEP Data
Explication : Cet exemple démontre un workflow complet : création d'un modèle, téléchargement vers le système de fichiers local, puis rechargement du modèle dans une 'nouvelle' session CAS simulée pour effectuer du scoring. Un modèle de régression linéaire est entraîné et téléchargé. Ensuite, le modèle est chargé (UPLOAD) sous un nouveau nom ('reloaded_model') comme si une nouvelle session CAS avait été initiée. Enfin, ce modèle rechargé est utilisé pour scorer de nouvelles données, prouvant que le téléchargement et le rechargement ont réussi. Cela illustre la portabilité des modèles ASTORE.
Copié !
/* 1. Création et entraînement d'un modèle simple */
data casuser.sample_data;
input x y;
datalines;
1 10
2 12
3 14
4 16
5 18
;
run;
proc reg data=casuser.sample_data outmodel=casuser.my_linear_model;
model y = x;
run;
/* 2. Téléchargement du modèle ASTORE */
proc astore;
download rstore=casuser.my_linear_model;
save_file='/tmp/my_linear_model.astore';
run;
/* 3. Déconnexion et reconnexion à une nouvelle session CAS (simulée) */
/* Dans un environnement réel, cela impliquerait de fermer la session courante et d'en ouvrir une nouvelle */
/* Pour cet exemple, nous allons simplement simuler en chargeant le modèle dans la même session */
/* et en utilisant une nouvelle 'nom_session_virtuelle' */
/* 4. Chargement du modèle depuis le système de fichiers local vers une nouvelle 'session' CAS */
proc astore;
upload rstore=casuser.reloaded_model;
restore_file='/tmp/my_linear_model.astore';
run;
/* 5. Utilisation du modèle rechargé pour le scoring */
data casuser.new_data;
input x;
datalines;
6
7
;
run;
proc astore;
score rstore=casuser.reloaded_model data=casuser.new_data out=casuser.scored_data;
run;
proc print data=casuser.scored_data;
run;
1
/* 1. Création et entraînement d'un modèle simple */
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.
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.