Bonjour!

J'ai écrit un code qui marche très bien mais je suis certain qu'on peut mieux faire.

J'ai créé cette table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
data essai;length NOM $20.;
input NUMERO NOM $ NOTE;
cards;
1 Toto 4
2 eveillé 18
3 intelligent 19
4 fernéant 6
5 frer_toto 2
6 travailleur 20
;
run;
Elle contient le numéro d'ordre, le nom et la note obtenue par l'élève.
Maintenant je veux ajouter deux autres observation.
une ligne dont le nom sera Ensemble fernéant dont la note sera la somme des notes des fernéant. La seconde ligne sera la somme de ceux qui travaillent.
J'ai donc écrit ce code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
data essai;set essai end=fin;
output;
if fin then do;
NUMERO=7;
NOM="ensemble frenéant";
NOTE=4+6+2;
output;
NUMERO=8;
NOM="ensemble éveillé";
NOTE=18+19+20;
output;
end;
run;
Mais voyons la somme a été calculée manuellement. Je cherche un code pour dire à SAS, faire la somme des notes qui sont inférieur à 10 pour la ligne "ensemble fernéant" par exemple. Ou peut-être faire la somme des notes sont les numéros sont 1 4 et 5.

Aidez moi!!!!