Comment Afficher un Tableau en Python ?
Ce tutoriel vous montre Afficher un Tableau en Python 👇
Python est un langage de programmation polyvalent qui permet de manipuler facilement des données tabulaires. Ce guide vous expliquera comment créer et afficher un tableau en Python à l’aide de différentes méthodes, notamment la bibliothèque pandas
, l’une des plus utilisées pour la manipulation de données.
Prérequis :
Avant de commencer, vous devez vous assurer que Python est installé sur votre machine. De plus, pour certaines méthodes, vous devrez installer des bibliothèques supplémentaires comme pandas
et matplotlib
.
1. Créer un Tableau Simple en Python (Liste de Listes)
Dans sa forme la plus basique, un tableau en Python peut être créé comme une liste de listes.
Exemple :
# Créer un tableau (liste de listes)
tableau = [
['Nom', 'Âge', 'Ville'],
['Alice', 25, 'Paris'],
['Bob', 30, 'Lyon'],
['Charlie', 35, 'Marseille']
]
# Afficher le tableau
for ligne in tableau:
print(ligne)
Résultat :
['Nom', 'Âge', 'Ville']
['Alice', 25, 'Paris']
['Bob', 30, 'Lyon']
['Charlie', 35, 'Marseille']
2. Utiliser la Bibliothèque pandas
pour Afficher un Tableau
pandas
est une bibliothèque puissante utilisée pour la manipulation de données tabulaires. Elle est parfaite pour afficher des tableaux plus complexes.
Installation de pandas
:
Si vous n’avez pas encore installé pandas
, exécutez cette commande dans votre terminal :
pip install pandas
Exemple d’Affichage d’un Tableau avec pandas
:
import pandas as pd
# Créer un DataFrame (tableau de données) avec pandas
data = {
'Nom': ['Alice', 'Bob', 'Charlie'],
'Âge': [25, 30, 35],
'Ville': ['Paris', 'Lyon', 'Marseille']
}
df = pd.DataFrame(data)
# Afficher le tableau
print(df)
Résultat :
Nom Âge Ville
0 Alice 25 Paris
1 Bob 30 Lyon
2 Charlie 35 Marseille
3. Afficher un Tableau sous forme Graphique avec matplotlib
Si vous voulez afficher un tableau sous forme graphique (visuel), vous pouvez utiliser la bibliothèque matplotlib
.
Installation de matplotlib
:
Installez matplotlib
en exécutant cette commande dans votre terminal :
pip install matplotlib
Exemple d’Affichage Graphique :
import matplotlib.pyplot as plt
import pandas as pd
# Créer un DataFrame avec pandas
data = {
'Nom': ['Alice', 'Bob', 'Charlie'],
'Âge': [25, 30, 35],
'Ville': ['Paris', 'Lyon', 'Marseille']
}
df = pd.DataFrame(data)
# Créer une figure et un axe
fig, ax = plt.subplots()
# Masquer les axes
ax.axis('tight')
ax.axis('off')
# Créer une table à partir du DataFrame
ax.table(cellText=df.values, colLabels=df.columns, cellLoc='center', loc='center')
# Afficher la table
plt.show()
4. Utiliser prettytable
pour un Affichage Esthétique en Console
Si vous travaillez dans un terminal et que vous souhaitez un affichage plus esthétique, vous pouvez utiliser la bibliothèque prettytable
.
Installation de prettytable
:
pip install prettytable
Exemple d’Affichage avec prettytable
:
from prettytable import PrettyTable
# Créer un tableau
table = PrettyTable()
# Ajouter des colonnes
table.field_names = ["Nom", "Âge", "Ville"]
# Ajouter des lignes
table.add_row(["Alice", 25, "Paris"])
table.add_row(["Bob", 30, "Lyon"])
table.add_row(["Charlie", 35, "Marseille"])
# Afficher le tableau
print(table)
Résultat :
+---------+-----+-----------+
| Nom | Âge | Ville |
+---------+-----+-----------+
| Alice | 25 | Paris |
| Bob | 30 | Lyon |
| Charlie | 35 | Marseille |
+---------+-----+-----------+
5. Utiliser des Structures Python Simples
Si vous ne voulez pas utiliser de bibliothèque externe, vous pouvez également afficher un tableau sous forme de texte en formatant les chaînes manuellement.
Exemple d’Affichage Formaté :
# Créer un tableau
tableau = [
['Nom', 'Âge', 'Ville'],
['Alice', 25, 'Paris'],
['Bob', 30, 'Lyon'],
['Charlie', 35, 'Marseille']
]
# Afficher le tableau avec un formatage simple
for ligne in tableau:
print(f"{ligne[0]:<10} {ligne[1]:<3} {ligne[2]}")
Résultat :
Nom Âge Ville
Alice 25 Paris
Bob 30 Lyon
Charlie 35 Marseille
Conclusion
Voici un récapitulatif des méthodes pour afficher un tableau en Python :
- Liste de listes : pour une approche simple et rapide.
pandas
: pour la manipulation et l’affichage de grands ensembles de données tabulaires.matplotlib
: pour un affichage graphique des tableaux.prettytable
: pour un affichage esthétique dans la console.- Affichage formaté : pour un contrôle manuel de l’affichage avec Python standard.
Ces outils sont pratiques et adaptés à divers cas d’utilisation. Que ce soit pour afficher des données simples ou manipuler des ensembles de données complexes, Python offre une large gamme d’options pour travailler avec des tableaux.
Comment ajouter une colonne dans un tableau ?
En Python, lorsqu’on travaille avec des tableaux, en particulier avec des structures comme les DataFrames de pandas
, il est très simple d’ajouter une nouvelle colonne. Voici un guide pour différentes façons d’ajouter une colonne à un tableau.
1. Ajouter une colonne dans un tableau avec pandas
pandas
est la bibliothèque la plus utilisée pour manipuler des données tabulaires en Python. Vous pouvez facilement ajouter une colonne à un DataFrame en assignant une nouvelle série de données.
Exemple de base :
import pandas as pd
# Créer un DataFrame d'exemple
data = {
'Nom': ['Alice', 'Bob', 'Charlie'],
'Âge': [25, 30, 35]
}
df = pd.DataFrame(data)
# Ajouter une nouvelle colonne 'Ville'
df['Ville'] = ['Paris', 'Lyon', 'Marseille']
# Afficher le DataFrame avec la nouvelle colonne
print(df)
Résultat :
Nom Âge Ville
0 Alice 25 Paris
1 Bob 30 Lyon
2 Charlie 35 Marseille
2. Ajouter une colonne avec des valeurs calculées
Vous pouvez aussi ajouter une colonne basée sur des calculs effectués à partir des colonnes existantes.
Exemple :
# Ajouter une colonne 'Âge en 5 ans' basée sur la colonne 'Âge'
df['Âge en 5 ans'] = df['Âge'] + 5
print(df)
Résultat :
Nom Âge Ville Âge en 5 ans
0 Alice 25 Paris 30
1 Bob 30 Lyon 35
2 Charlie 35 Marseille 40
3. Ajouter une colonne avec une valeur fixe
Si vous souhaitez ajouter une colonne avec la même valeur pour toutes les lignes, vous pouvez simplement assigner cette valeur à toute la colonne.
Exemple :
# Ajouter une colonne 'Pays' avec la même valeur pour toutes les lignes
df['Pays'] = 'France'
print(df)
Résultat :
Nom Âge Ville Âge en 5 ans Pays
0 Alice 25 Paris 30 France
1 Bob 30 Lyon 35 France
2 Charlie 35 Marseille 40 France
4. Ajouter une colonne à partir d’une condition (colonne conditionnelle)
Vous pouvez ajouter une colonne dont les valeurs sont définies en fonction d’une condition appliquée sur une ou plusieurs autres colonnes.
Exemple :
Ajouter une colonne Catégorie d'âge
qui classifie les personnes en fonction de leur âge.
# Ajouter une colonne conditionnelle
df['Catégorie d\'âge'] = ['Jeune' if age < 30 else 'Adulte' for age in df['Âge']]
print(df)
Résultat :
Nom Âge Ville Âge en 5 ans Pays Catégorie d'âge
0 Alice 25 Paris 30 France Jeune
1 Bob 30 Lyon 35 France Adulte
2 Charlie 35 Marseille 40 France Adulte
5. Ajouter une colonne à partir d’une autre structure de données
Si vous avez un tableau ou une série de données (comme une liste, un tableau NumPy ou une autre colonne pandas
), vous pouvez ajouter cette série directement comme une nouvelle colonne.
Exemple :
# Ajouter une colonne à partir d'une liste
nouvelle_colonne = ['Embauché', 'En attente', 'Embauché']
df['Statut'] = nouvelle_colonne
print(df)
Résultat :
Nom Âge Ville Âge en 5 ans Pays Catégorie d'âge Statut
0 Alice 25 Paris 30 France Jeune Embauché
1 Bob 30 Lyon 35 France Adulte En attente
2 Charlie 35 Marseille 40 France Adulte Embauché
6. Ajouter une colonne avec des valeurs manquantes
Vous pouvez ajouter une colonne avec des valeurs manquantes (NaN
) si vous n’avez pas encore toutes les données à remplir.
Exemple :
import numpy as np
# Ajouter une colonne avec des valeurs manquantes
df['Salaire'] = np.nan
print(df)
Résultat :
Nom Âge Ville Âge en 5 ans Pays Catégorie d'âge Statut Salaire
0 Alice 25 Paris 30 France Jeune Embauché NaN
1 Bob 30 Lyon 35 France Adulte En attente NaN
2 Charlie 35 Marseille 40 France Adulte Embauché NaN
Pour ajouter une colonne dans un tableau avec pandas
, il suffit d’assigner une nouvelle série de données à une colonne de votre DataFrame. Voici un récapitulatif des différentes façons de le faire :
- Ajouter une colonne avec des données simples :
df['nouvelle_colonne'] = [valeurs]
- Ajouter une colonne calculée :
df['nouvelle_colonne'] = df['colonne_existante'] + valeur
- Ajouter une colonne avec une valeur fixe :
df['nouvelle_colonne'] = 'valeur_fixe'
- Ajouter une colonne conditionnelle :
df['nouvelle_colonne'] = [condition for val in df['colonne']]
- Ajouter une colonne à partir d’une autre structure de données :
df['nouvelle_colonne'] = autre_structure
- Ajouter une colonne avec des valeurs manquantes :
df['nouvelle_colonne'] = np.nan
Avec ces méthodes, vous pouvez enrichir vos tableaux de données en fonction de vos besoins spécifiques.
Comment combiner plusieurs tableaux pandas ?
En Python, lorsque vous travaillez avec plusieurs tableaux (ou DataFrames en pandas
), il existe plusieurs méthodes pour les combiner en fonction de vos besoins. Voici les principales méthodes pour combiner plusieurs DataFrames :
1. Concaténer (concat)
La fonction concat()
permet de fusionner plusieurs DataFrames verticalement (lignes) ou horizontalement (colonnes).
Exemple 1 : Concaténation verticale (ajouter des lignes)
Si vous souhaitez ajouter les lignes de plusieurs tableaux ensemble, vous pouvez utiliser concat()
.
import pandas as pd
# Créer deux DataFrames
df1 = pd.DataFrame({
'Nom': ['Alice', 'Bob'],
'Âge': [25, 30]
})
df2 = pd.DataFrame({
'Nom': ['Charlie', 'David'],
'Âge': [35, 40]
})
# Concaténer verticalement (ajouter des lignes)
df_concat = pd.concat([df1, df2])
print(df_concat)
Résultat :
Nom Âge
0 Alice 25
1 Bob 30
0 Charlie 35
1 David 40
Exemple 2 : Concaténation horizontale (ajouter des colonnes)
Si vous souhaitez combiner plusieurs DataFrames en ajoutant des colonnes, vous pouvez concaténer horizontalement en utilisant axis=1
.
# Créer deux DataFrames
df1 = pd.DataFrame({
'Nom': ['Alice', 'Bob'],
'Âge': [25, 30]
})
df2 = pd.DataFrame({
'Ville': ['Paris', 'Lyon'],
'Salaire': [50000, 60000]
})
# Concaténer horizontalement (ajouter des colonnes)
df_concat = pd.concat([df1, df2], axis=1)
print(df_concat)
Résultat :
Nom Âge Ville Salaire
0 Alice 25 Paris 50000
1 Bob 30 Lyon 60000
2. Joindre (merge)
La fonction merge()
est utilisée pour fusionner deux DataFrames en fonction d’une ou plusieurs colonnes communes, semblable à une jointure dans les bases de données (SQL).
Types de jointures :
inner
: Conserve uniquement les lignes qui existent dans les deux DataFrames (intersection).outer
: Conserve toutes les lignes des deux DataFrames (union).left
: Conserve toutes les lignes du premier DataFrame et les correspondances du second.right
: Conserve toutes les lignes du second DataFrame et les correspondances du premier.
Exemple : Jointure interne (inner join
)
# Créer deux DataFrames
df1 = pd.DataFrame({
'Nom': ['Alice', 'Bob', 'Charlie'],
'Âge': [25, 30, 35]
})
df2 = pd.DataFrame({
'Nom': ['Alice', 'Bob', 'David'],
'Ville': ['Paris', 'Lyon', 'Marseille']
})
# Faire une jointure interne (inner join) sur la colonne 'Nom'
df_merge = pd.merge(df1, df2, on='Nom', how='inner')
print(df_merge)
Résultat :
Nom Âge Ville
0 Alice 25 Paris
1 Bob 30 Lyon
Exemple : Jointure externe (outer join
)
# Faire une jointure externe (outer join) sur la colonne 'Nom'
df_merge = pd.merge(df1, df2, on='Nom', how='outer')
print(df_merge)
Résultat :
Nom Âge Ville
0 Alice 25.0 Paris
1 Bob 30.0 Lyon
2 Charlie 35.0 NaN
3 David NaN Marseille
3. Joindre sur plusieurs colonnes
Vous pouvez également faire une jointure en utilisant plusieurs colonnes comme clés.
Exemple :
# Créer deux DataFrames
df1 = pd.DataFrame({
'Nom': ['Alice', 'Bob', 'Charlie'],
'Ville': ['Paris', 'Lyon', 'Paris'],
'Âge': [25, 30, 35]
})
df2 = pd.DataFrame({
'Nom': ['Alice', 'Bob', 'Charlie'],
'Ville': ['Paris', 'Lyon', 'Marseille'],
'Salaire': [50000, 60000, 70000]
})
# Faire une jointure sur les colonnes 'Nom' et 'Ville'
df_merge = pd.merge(df1, df2, on=['Nom', 'Ville'], how='inner')
print(df_merge)
Résultat :
Nom Ville Âge Salaire
0 Alice Paris 25 50000
1 Bob Lyon 30 60000
4. Joindre avec des clés différentes
Si les colonnes que vous souhaitez utiliser pour la jointure ont des noms différents dans chaque DataFrame, vous pouvez utiliser les paramètres left_on
et right_on
pour spécifier les colonnes correspondantes.
Exemple :
# Créer deux DataFrames
df1 = pd.DataFrame({
'Nom_complet': ['Alice', 'Bob', 'Charlie'],
'Âge': [25, 30, 35]
})
df2 = pd.DataFrame({
'Nom': ['Alice', 'Bob', 'David'],
'Ville': ['Paris', 'Lyon', 'Marseille']
})
# Faire une jointure où les colonnes ont des noms différents
df_merge = pd.merge(df1, df2, left_on='Nom_complet', right_on='Nom', how='inner')
print(df_merge)
Résultat :
Nom_complet Âge Nom Ville
0 Alice 25 Alice Paris
1 Bob 30 Bob Lyon
5. Fusionner avec join()
pandas
offre également la méthode join()
pour joindre des DataFrames sur l’index. Cette méthode est utile lorsque vous avez des index communs dans vos DataFrames.
Exemple :
# Créer deux DataFrames avec des index communs
df1 = pd.DataFrame({
'Âge': [25, 30, 35]
}, index=['Alice', 'Bob', 'Charlie'])
df2 = pd.DataFrame({
'Ville': ['Paris', 'Lyon', 'Marseille']
}, index=['Alice', 'Bob', 'David'])
# Joindre sur l'index
df_join = df1.join(df2, how='inner')
print(df_join)
Résultat :
Âge Ville
Alice 25 Paris
Bob 30 Lyon
Voici un récapitulatif des méthodes pour combiner plusieurs tableaux (DataFrames) en Python avec pandas
:
concat()
: Pour combiner des DataFrames verticalement (lignes) ou horizontalement (colonnes).merge()
: Pour effectuer des jointures sur des colonnes communes, similaire aux jointures SQL (inner, outer, left, right).join()
: Pour fusionner des DataFrames sur l’index.
Ces outils permettent de manipuler efficacement des données provenant de différentes sources ou structures dans pandas
.