- Importer les fichiers
notes.txt
et clients.txt
.
PROC IMPORT OUT= notes
DATAFILE= "/home/u49948743/SAS2021/notes.txt"
DBMS=DLM REPLACE;
DELIMITER=";";
GETNAMES=YES;
DATAROW=2;
RUN;
PROC IMPORT OUT= clients
DATAFILE= "/home/u49948743/SAS2021/clients.txt"
DBMS=DLM REPLACE;
DELIMITER=";";
GETNAMES=YES;
DATAROW=2;
RUN;
- Faire une jointure des deux fichiers SAS obtenus.
proc sort data=notes ; by resto_id annee ; run ;
proc sort data=clients ; by resto_id annee ; run ;
data resto ;
merge notes clients;
by resto_id annee ;
run ;
- Modifier la variable Quartier en supprimant le mot
'Quartier'
pour chaque observation
data resto;
set resto ;
/* quand on ne sait pas combien de caractères on souhaite,
on ne précise que la position de départ */
quartier=substr(quartier,10) ;
run ;
- Créer une nouvelle variable note au format caractère.
data resto;
set resto ;
note2= put(note,best12.);
run ;
- Créer une table contenant la meilleure note pour chaque restaurant.
/* Option 1 */
proc sort data=resto ; by resto_id note ; run ;
data best ;
set resto ;
if last.resto_id ;
by resto_id note ;
run ;
/* Option 2 */
proc sort data=resto; by resto_id descending note ; run ;
proc sort data=resto out=best2 nodupkey ; by resto_id ; run ;
- Calculer la fréquence des types de restaurant en sélectionnant les observations qui correspondent à des restaurants dont le nom contient le mot
"pizza"
(quelle que soit sa casse).
proc freq data=resto (where=(index(upcase(nom), "PIZZA")>0)) ;
table type;
run ;
- Calculer la moyenne des notes pour les années 2018 et 2019 séparément en une procédure.
proc means data=resto (where=(annee in (2018,2019))) ;
class annee ;
var note;
run ;
- Présenter la moyenne du nombre de clients par mois par quartier et par année dans un même tableau.
proc tabulate data=resto;
class annee quartier ;
var n_clients_moy;
table (quartier),(annee)*(n_clients_moy)*(mean);
run ;
- Sauvegarder dans une table les résultats de la
PROC TABULATE
.
ods output table=item9;
proc tabulate data=resto;
class annee quartier ;
var n_clients_moy;
table (quartier),(annee)*(n_clients_moy)*(mean);
run ;
- Sortir les résultats de la
PROC FREQ
dans un fichier rtf en utilisant le style journal.
ods rtf file="/home/u49948743/SAS2021/frequences.rtf" style=journal;
proc freq data=resto (where=(index(upcase(nom), "PIZZA")>0)) ;
table type;
run ;
ods rtf close;