/* CORRIGÉ CONTROLE 03 */ /* SUJET A */ /* EXERCICE 1 */ DATA gary; INPUT annee titre_gary $ 10-42 ; /* ou INFILE ... */ CARDS; 1943     Géographie humaine 1945     Éducation européenne 1946     Sergent Gnama 1975     Les oiseaux vont mourir au Pérou 1960 La Promesse de l'aube ;RUN; DATA ajar; INPUT annee titre_ajar $ 6-36; CARDS; 1975 La Vie devant soi 1974 Gros-Câlin 1979 L’Angoisse du roi Salomon ;RUN; PROC SORT DATA=gary; BY annee; RUN; PROC SORT DATA=ajar; BY annee; RUN; DATA gajar; MERGE gary ajar; BY annee; RUN; /* EXERCICE 2 */ /* Je rajoute une étape pour rentrer les données. Cette étape n'était pas à inscrire sur votre copie. */ DATA concours; INPUT nom :$9. espece $ annee note; CARDS; Gerard Canard 2010 9 Colombine Carpe 2011 5 Roger Canard 2010 7 Gerard Canard 2011 8.5 Gerard Canard 2012 8 Colombine Carpe 2010 4 Roger Canard 2011 7 ;RUN; PROC SORT DATA=concours; BY nom; RUN; DATA concours2; SET concours; BY nom; IF first.nom THEN DO ; n=1; s_note=note; END; ELSE DO ; n+1; s_note+note; END; IF last.nom THEN DO ; moy=s_note/n; OUTPUT; END; KEEP nom espece moy; RUN; /* SUJET B */ /* EXERCICE 1 */ PROC SORT DATA=concours; BY espece; RUN; DATA concours3; SET concours; BY espece; IF first.espece THEN DO; n=1; s_note=note; END; ELSE DO; n+1; s_note+note; END; IF last.espece THEN DO moyenne=s_note/n; OUTPUT; END; KEEP espece moyenne; RUN; /* EXERCICE 2 */ DATA music; INPUT annee @'#' titre $40.; /* OU INFILE ... */ CARDS; 1964 #The Times They Are a-Changin' 1962 #Bob Dylan 1963 #The Freewheelin' Bob Dylan 1965 #Bringing It All Back Home 1964 #Another Side of Bob Dylan 1978 #Street-Legal ;RUN; /* PROC PRINT DATA=music; RUN; */ /* Je rajoute une étape pour rentrer les données. Cette étape n'était pas à inscrire sur votre copie. */ DATA movies; INPUT annee title $30.; CARDS; 1978 La Dernière Valse 1973 Pat Garrett et Billy le Kid ;RUN; PROC SORT DATA=music; BY annee; RUN; PROC SORT DATA=movies; BY annee; RUN; DATA dylan_total; MERGE music movies; BY annee; RUN;