Aller au contenu principal

Combiner plusieurs sources de données

Mis à jour le 29 juillet 2026

Croiser les données pour des analyses plus riches

Les analyses les plus puissantes naissent du croisement de plusieurs sources. Ventes et CRM, budget et réalisé, web analytics et conversions : chacun de ces fichiers, pris isolément, ne raconte qu’une moitié d’histoire. C’est en les combinant que vous découvrez des insights invisibles dans chaque source séparée — par exemple que vos meilleurs clients en volume sont vos moins rentables en marge.

Uploader plusieurs fichiers

ChatGPT accepte plusieurs fichiers dans une même conversation. Le réflexe utile consiste à les présenter dès le début de session en indiquant ce que contient chacun : vous économisez ensuite toutes les questions de clarification, et vous évitez surtout que ChatGPT devine mal le rôle d’un fichier.

Voici 3 fichiers :
1. ventes_q1_2026.xlsx — les transactions de vente
2. clients_crm.csv — la base clients avec secteur et taille
3. objectifs_2026.csv — les objectifs par région et par mois

Je vais te demander de les croiser pour une analyse complète.

Uploadez les fichiers un par un ou tous ensemble. ChatGPT les charge tous dans son environnement Python et vous pouvez les manipuler librement.

Fusionner les tables (jointures)

La jointure combine deux tables sur une colonne commune : c’est le coeur de tout croisement. Demandez-la en nommant explicitement la clé, et exigez dès le premier prompt un signalement des lignes orphelines, celles dont la clé ne trouve pas de correspondance.

Fusionne le fichier ventes avec le fichier clients
en utilisant la colonne "id_client" comme clé de jointure.
Affiche un aperçu du résultat et signale les ventes
sans client correspondant.

Le résultat obtenu dépend du type de jointure retenu, et ce choix n’est jamais neutre : selon le cas, vous perdez des ventes ou vous conservez des lignes incomplètes.

Type de jointureComportementQuand l’utiliser
Inner joinGarde uniquement les correspondancesAnalyse stricte, pas de données incomplètes
Left joinGarde toutes les lignes de la table principaleEnrichir les ventes avec les infos clients (même si client inconnu)
Outer joinGarde toutes les lignes des deux tablesIdentifier les écarts entre deux sources

Vous n’avez pas besoin de connaître ce jargon pour l’utiliser. Décrivez simplement le résultat voulu, en précisant le sort réservé aux cas non appariés.

Je veux enrichir mes ventes avec les infos clients.
Garde toutes les ventes, même celles dont le client
n'est pas dans le CRM (mets "Inconnu" dans ce cas).

ChatGPT choisit le bon type de jointure automatiquement — ici un left join, puisque aucune vente ne doit disparaître du total. La formulation compte : si vous aviez écrit « croise les deux fichiers » sans plus de précision, une inner join aurait pu amputer votre chiffre d’affaires de tous les clients absents du CRM.

Comparer budget vs réalisé

Le croisement le plus fréquent en pilotage confronte deux fichiers construits par des équipes différentes : les objectifs fixés en début d’année d’un côté, les ventes agrégées de l’autre. La particularité tient ici à la clé de jointure, qui est double — région et mois — car aucune des deux colonnes ne suffit à identifier une ligne.

Croise le fichier des objectifs (colonnes : region, mois, objectif_ca)
avec le fichier des ventes agrégées (region, mois, ca_realise).
Calcule l'écart en euros et en pourcentage pour chaque combinaison.
Surligne les cases où l'objectif n'est pas atteint.

Enrichir avec des données externes

Un fichier de référence permet d’ajouter une dimension qui n’existe nulle part dans vos données de vente. Le cas classique est celui du code postal : présent dans toutes les commandes, il ouvre l’analyse géographique dès qu’on lui associe une table de correspondance.

Voici un fichier de référence avec les codes postaux
et les régions administratives françaises.
Ajoute la colonne "region" à mes données de ventes
en utilisant le code postal comme clé.

Le même mécanisme relie deux univers habituellement cloisonnés, le marketing digital et le commerce. Rapprocher le trafic des ventes fait apparaître les pages qui attirent sans convertir, celles dont l’audience flatte les rapports marketing sans jamais alimenter le carnet de commandes.

Fichier 1 : trafic web par page produit (page_url, visites, taux_rebond)
Fichier 2 : ventes par produit (produit, ca, quantite)

Croise les deux fichiers sur le nom du produit.
Calcule le taux de conversion (ventes / visites) par produit.
Quel produit a le meilleur ratio visites → ventes ?

Gérer les incohérences entre sources

Les sources de données ont rarement le même format, et c’est précisément là que les croisements échouent — silencieusement. Trois problèmes reviennent constamment. Le premier tient aux noms de colonnes, qui désignent la même information sous deux libellés différents parce que deux équipes les ont nommées séparément.

Dans le fichier ventes, la colonne s'appelle "client_id".
Dans le CRM, elle s'appelle "identifiant_client".
Fais la jointure en mappant ces deux colonnes.

Le deuxième concerne les dates, dont la granularité et l’écriture diffèrent d’un système à l’autre. L’harmonisation doit précéder la fusion, jamais la suivre : une fois les lignes appariées de travers, plus rien ne permet de retrouver l’erreur.

Les ventes utilisent le format JJ/MM/AAAA.
Les objectifs utilisent le format AAAA-MM.
Harmonise les deux sur le mois (AAAA-MM) avant de croiser.

Le troisième porte sur les valeurs catégorielles, où une simple différence de casse ou d’accentuation suffit à faire échouer l’appariement, alors qu’un lecteur humain n’y verrait aucune ambiguïté.

Dans les ventes, les régions sont en majuscules (ILE-DE-FRANCE).
Dans le CRM, elles sont en minuscules (Île-de-France).
Normalise les deux avant la jointure.

Aucune de ces précautions ne dispense du contrôle final. Une jointure ratée ne produit pas de message d’erreur : elle produit un tableau plus petit, parfaitement présentable, et personne ne le remarque avant la réunion. Demandez donc systématiquement le bilan.

Après la jointure, combien de lignes ont été perdues ?
Combien de lignes n'ont pas trouvé de correspondance ?
Montre 5 exemples de non-correspondances.

Analyse croisée multi-dimensions

Une fois les sources fusionnées, vous pouvez croiser des dimensions qui étaient jusque-là séparées. C’est le bénéfice réel de tout ce travail de plomberie, et le moment où il devient visible.

Maintenant que j'ai les ventes enrichies avec les infos CRM :
1. CA par secteur d'activité du client ET par catégorie de produit
2. Panier moyen selon la taille de l'entreprise (TPE, PME, ETI, GE)
3. Top 10 des combinaisons (secteur × produit) les plus rentables

Ces analyses seraient impossibles avec un seul fichier : le fichier de ventes ignore la taille de l’entreprise cliente, et le CRM ignore ce qu’elle achète. Le croisement est ce qui permet enfin de poser la question qui intéresse la direction commerciale — quel type de client achète quel type de produit.

Points clés à retenir

  • Uploadez plusieurs fichiers dans la même conversation pour les croiser
  • Décrivez la logique de jointure en langage naturel — ChatGPT choisit la méthode technique
  • Harmonisez les formats (dates, noms, majuscules) avant de fusionner
  • Vérifiez toujours le nombre de lignes avant/après la jointure
  • Le croisement multi-sources révèle des insights invisibles dans chaque source isolée