Lycée   >   Premiere   >   NSI   >   Fusionner des tables avec Python

Fusionner des tables avec Python

  • Fiche de cours
  • Quiz
  • Profs en ligne
Objectifs
  • Construire une nouvelle table en combinant les données de deux tables.
  • Définir un domaine de valeur.
Point clé

Fusionner des tables, c’est soit les concaténer (mettre bout à bout), soit en créer une nouvelle qui permet de regrouper les données des 2 tables.

Pour bien comprendre
  • Importer une table depuis un fichier CSV
  • Utiliser la bibliothèque Pandas ou CSV
1. La fusion de tables ayant exactement les mêmes colonnes
Fusionner (ou concaténer) deux tables qui ont les mêmes descripteurs consiste à simplement « ajouter » les lignes de la seconde à la première.
Remarque
« Concaténer » signifie « mettre bout à bout deux chaines de caractères ».
Méthode 1 – Concaténation des tables avec la bibliothèque Pandas
Les deux tables ayant les mêmes descripteurs, on utilise la méthode .concat([table1,table2]).
Exemple
Fusion des fichiers chiens.csv et chiens2.csv
import pandas
data=pandas.read_csv('chiens.csv',sep=';')
data2=pandas.read_csv('chiens2.csv',sep=';')
a=pandas.concat(data,data2])
print(a)
Remarque
Il pourra y avoir des doublons.
Méthode 2 – Fusion des tables avec la bibliothèque CSV
En utilisant une boucle, on va utiliser la méthode .append() pour ajouter les éléments.
Rappel
La méthode .append() permet d’ajouter un élément à la fin.
Exemple
Fusion de deux fichiers CSV qui contiennent des informations sur des informaticiens.
2. La fusion de tables n'ayant qu'un seul attribut en commun

Le but est de créer une nouvelle table, c’est-à-dire de relier les données d’une colonne de la première table à une colonne de l’autre table. On appelle aussi cela une jointure, qui se fait sur l’attribut (ou descripteur) commun.

Il faudra donc être attentif aux valeurs que peuvent prendre les attributs.

Le domaine de valeur d’un attribut est l’ensemble des valeurs que peut prendre cet attribut.
Exemple
Pour l’attribut 'nom', le domaine de valeur est {'Hopper','Lovelace','Liskov','Sanders','Huet',
'Turing','Berry','Boole','Gates'}
.
Exemple
On fusionne les deux tables suivantes, qui ne possèdent qu’un attribut en commun : 'nom'.
  nom prenom ne en
0 Hopper Grace 1906
1 Lovelace Ada 1815
2 Liskov Barbara 1939
3 Sanders Lucy 1954
4 Huet Gerard 1947
5 Turing Alan 1912
6 Berry Gerard 1948
7 Boole George 1815
8 Gates Bill 1955
  nom no nationalite
0 Hopper 2 USA
1 Lovelace 34 ?
2 Liskov 4 ?
3 Sanders 76 ?
4 Huet 3 France
5 Turing 1 GB
6 Berry 78 France
7 Boole 12 ?
8 Gates 5 USA

Une fois fusionnées, la jointure est l’attribut 'nom' :

  nom prenom ne en no nationalite
0 Hopper Grace 1906 2 USA
1 Lovelace Ada 1815 34 ?
2 Liskov Barbara 1939 4 ?
3 Sanders Lucy 1954 76 ?
4 Huet Gerard 1947 3 France
5 Turing Alan 1912 1 GB
6 Berry Gerard 1948 78 France
7 Boole George 1815 12 ?
8 Gates Bill 1955 5 USA
Méthode avec Pandas
On utilise la méthode .merge(table1,table2).
Exemple
Fusion de deux fichiers CSV qui contiennent des informations sur des informaticiens.
Remarque
La fusion de table avec la bibliothèque CSV est faisable mais plus ardue.

Comment as-tu trouvé ce cours ?

Évalue ce cours !

 

Question 1/5

La médiane de 6 notes est 13. Cela signifie que :

Question 2/5

On a obtenu la série statistique suivante :

Combien vaut la médiane ?

Question 3/5

On a obtenu la série ci-dessous :

Quelle est la médiane de cette série ?

Question 4/5

On a relevé les tailles en cm des élèves d’une classe :

 

Parmi les propositions suivantes, laquelle est vraie ?

Question 5/5

Les notes en français de deux classes littéraires sont données dans le tableau suivant :

Quelle est la note médiane ?

Vous avez obtenu75%de bonnes réponses !

Reçois l’intégralité des bonnes réponses ainsi que les rappels de cours associés

Une erreur s'est produite, veuillez ré-essayer

Consultez votre boite email, vous y trouverez vos résultats de quiz!

Découvrez le soutien scolaire en ligne avec myMaxicours

Le service propose une plateforme de contenus interactifs, ludiques et variés pour les élèves du CP à la Terminale. Nous proposons des univers adaptés aux tranches d'âge afin de favoriser la concentration, encourager et motiver quel que soit le niveau. Nous souhaitons que chacun se sente bien pour apprendre et progresser en toute sérénité ! 

Fiches de cours les plus recherchées

NSI

Interagir avec une page HTML : éléments graphiques

NSI

Interagir avec une page HTML : événements

NSI

Interagir avec une page HTML : boutons cliquables

NSI

Comprendre les requêtes HTTP et la réponse serveur

NSI

Comprendre la notion de cookie

NSI

Comprendre l'intérêt du protocole HTTPS

NSI

Comprendre le fonctionnement d'un formulaire

NSI

La transmission d'un formulaire avec GET ou POST

NSI

Reconnaitre différents constituants d'un ordinateur

NSI

Comprendre la structure des circuits combinatoires