Matcher des individus issus de 2 tables SAS
Natachaaaa
-
Natachaaa -
Natachaaa -
Bonjour,
J'ai deux tables SAS avec entre autre et en commun les colonnes nom - prénom - adresse - numéro de téléphone. La 1ére table contient des données d'une entreprise et la 2éme table contient des données d'un club d'équitation. Il s'avère que certains individus sont aussi bien présents dans les deux tables et je veux les identifier. Comment faire pour les identifier?
A noter que chaque table a sa propre clé primaire qui n'est pas présente dans l'autre table.
Merci beaucoup pour votre aide.
Natacha
J'ai deux tables SAS avec entre autre et en commun les colonnes nom - prénom - adresse - numéro de téléphone. La 1ére table contient des données d'une entreprise et la 2éme table contient des données d'un club d'équitation. Il s'avère que certains individus sont aussi bien présents dans les deux tables et je veux les identifier. Comment faire pour les identifier?
A noter que chaque table a sa propre clé primaire qui n'est pas présente dans l'autre table.
Merci beaucoup pour votre aide.
Natacha
A voir également:
- Matcher des individus issus de 2 tables SAS
- Supercopier 2 - Télécharger - Gestion de fichiers
- Table des matières word - Guide
- 2 ecran pc - Guide
- Word numéro de page 1/2 - Guide
- Gta 6 trailer 2 - Guide
1 réponse
Bonjour,
Si on peut utiliser SQL sous SAS ça peut être simple (je ne connais pas SAS). En tout cas, il existe un blog sur SAS créé par une consultante : http://www.sasreference.com Peut-être peux-tu y trouver quelque chose.
Si on peut utiliser SQL sous SAS ça peut être simple (je ne connais pas SAS). En tout cas, il existe un blog sur SAS créé par une consultante : http://www.sasreference.com Peut-être peux-tu y trouver quelque chose.
Je vais voir si je peux trouver les réponses sur le blog.
Bonne journée
Vous avez le MERGE dans une étape data avec l'option IN= et l'usage d'une condition.
Ne garder que les 4 variables dont vous avez besoin.
Si vous avez des doublons dans les deux bases, enlevez-les avec un PROC SORT par exemple.
proc sort data=entreprise (keep=nom prenom adresse tel) out=entreprise nodupkey; by nom prenom adresse tel; run; proc sort data=club (keep=nom prenom adresse tel) out=club nodupkey; by nom prenom adresse tel; run; data nom_commun; merge entreprise (in=entrep) club (in=club); by nom prenom adresse tel; if entrep and club; run; proc print data=nom_commun noobs width=min; run;SAS a repris le langage SQL avec quelques variantes. Il faut utiliser la procédure PROC SQL.
proc sql; select distinct a.nom, a.prenom, a.adresse, a.tel from entreprise as a, club as b where a.nom=b.nom and a.prenom=b.prenom and a.adresse=b.adresse and a.tel=b.tel; quit;ou
proc sql; select distinct a.nom, a.prenom, a.adresse, a.tel from entreprise as a inner join club as b on a.nom=b.nom and a.prenom=b.prenom and a.adresse=b.adresse and a.tel=b.tel; quit;Avant, je vous conseille quand même de vérifier si vous pouvez n'avez pas de doublons dus à la case du texte. Mettez par exemple tout votre texte en majuscule avec la fonction UPCASE.
Vous pouvez aussi vérifier si vous pouvez vous contenter des noms et prénoms pour faire la comparaison en identifiant tous les noms identiques. Dans le code ci-dessous, vous listez les noms, prénoms qui apparaissent plus d'une fois dans la table entreprise.
Cordialement,
Véronique du blog www.sasreference.fr
Forum: http://www.facebook.com/board.php?uid=62742793112