Simplifier une jointure de table
Bonjour,
Je débute sur SAS et je dois faire une jointure entre deux tables "ménage" et "produit".
La table "ménage" contient une seule variable qui identifie les ménages (il n'y a pas de doublon).
Je souhaiterais faire une jointure à l'aide d'un merge afin d'obtenir deux tables: l'un concernant les ménages avec emprunts l'autre concernant les ménages sans emprunts.
J'ai réussi à faire ces deux tables mais je souhaiterais savoir si il était possible de le faire plus simplement.
Voici mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
PROC SORT DATA=DONNEES.PRODUIT ; BY IDENT; RUN;
PROC SORT DATA=DONNEES.MENAGE; BY IDENT; RUN;
DATA DONNEES.MENAGE_AVEC_EMPRUNT DONNEES.MENAGE.OUTPUT;
MERGE DONNEES.PRODUIT (in=a KEEP=ANNEE DETQUA DUREMP IDENT IDENTPOS NATEMP NATURE PRMO IDENTPROD
where=(NATURE ='6'))
DONNEES.MENAGE (in=b);
by IDENT;
if a and b then output DONNEES.MENAGE_AVEC_EMPRUNT;
else output DONNEES.MENAGE.OUTPUT;
RUN;
PROC SORT DATA=DONNEES.MENAGE.OUTPUT; BY IDENT; RUN;
DATA DONNEES.MENAGE_SANS_EMPRUNT;
MERGE DONNEES.MENAGE.OUTPUT (in=a)
DONNEES.PRODUIT (in=b
KEEP=ANNEE DETQUA DUREMP IDENT IDENTPOS NATEMP NATURE PRMO IDENTPROD);
by IDENT;
if a and b;
RUN; |
Je vous remercie par avance pour l'aide que vous pourrez m'apporter.
Cordialement