Bonjour,

Je tente désespérément de croiser deux table en effectuant une double jointure dont l'une en recherchant une chaine de caractère :
deux dataframe :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
A <- baseinsee
 B <- extractcomptesclient
 
str(baseinsee)
 
 $ RAISON_SOCIALE             : chr  "MONSIEUR THIERRY JANOYER" "VETEMENTS JARDI" "SA VETEMENTS GENIN" "MENUISERIE DU PONTHIEU" ...
 $ COMPLEMENT_RAISON_SOCIALE  : chr  "TAHITI PERLES CREATION" NA "G10" NA ...
 $ ADRESSE                    : chr  "170 AV DU COL DE L ANGE" "13 PL MAX LEJEUNE" "10 AVENUE DE LA REPUBLIQUE" "RTE DE DOULLENS" ...
 $ DEPARTEMENT                : chr  "13" "80" "44" "80" ...
 $ COMMUNE_ETABLISSEMENT      : int  NA NA NA NA NA NA NA NA NA NA ...
 $ COMMUNE                    : chr  NA NA NA NA ...
 $ CODE_COMMUNE_INSEE         : chr  "13" "80" "44" "80" ...
 $ CODE_POSTAL                : chr  "13420" "80100" "44600" "80100" ...
 $ SIREN                      : chr  "000325175" "005420104" "005680236" "005720222" ...
 $ SIRET                      : chr  "00032517500040" "00542010400019" "00568023600014" "00572022200016" ...
 
str(extractcomptesclients)
 
$ SIREN_Compte                   : chr  "309304616" "309304616" "309304616" "309304616" ...
 $ SIRET_Compte                   : chr  "30930461602767" "30930461602288" "30930461605141" "30930461600118" ...
 $ RAISON_SOCIALE                 : chr  "REXEL FRANCE" "REXEL FRANCE" "REXEL FRANCE" "REXEL FRANCE" ...
 $ Rue_Compte                     : chr  "LE PAVE" "225 ROUTE D ANGOULEME" "AVE DES XVI JEUX OLYMPIQUES" "55 RUE DE LA FEDERATION" ...
 $ Code_Postal_Compte             : chr  "50300" "24000" "73600" "41350" ...
 $ CODE_COMMUNE_INSEE             : chr  "50288" "24322" "73181" "41212" ...
 $ Commune_Compte                 : chr  "MARCEY LES GREVES" "PERIGUEUX" "MOUTIERS" "ST GERVAIS LA FORET" ...
 $ Departement_Compte             : chr  "50" "24" "73" "41" ...
Si je cherche l'exactitude, cela fonctionne via le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
listecompte <- merge(x=extractcomptesclients,y=baseinsee, by=c("RAISON_SOCIALE","CODE_COMMUNE_INSEE"))
Mais je voudrais étendre les recherche par le critère "RAISON SOCIALE" en recherchant une chaine de caractère de la table (extractcomptesclients) joint avec la table baseinsee

Exemple :
Baseinsee ///// extractcomptesclients
RAISON_SOCIALE CODE_COMMUNE_INSEE ///// RAISON_SOCIALE CODE_COMMUNE_INSEE
1 VETEMENTS JARDI 13068 ///// VETEMENT JARDI 13068
2 IKEA 75002 ///// SOCIETE IKEA 75002

Unitairement c’est faisable par le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Rech<-filter(Rech,str_detect(RAISON_SOCIALE,".IKEA."))
Mais comment faire sur plusieurs enregistrement ?

Merci de votre aide