Python

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 :

  1. Liste de listes : pour une approche simple et rapide.
  2. pandas : pour la manipulation et l’affichage de grands ensembles de données tabulaires.
  3. matplotlib : pour un affichage graphique des tableaux.
  4. prettytable : pour un affichage esthétique dans la console.
  5. 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.

Autres articles

Maîtriser l'utilisation de la méthode join en...
La méthode join en Python est un outil puissant pour...
Read more
Comment Gérer Efficacement le Budget Mariage avec...
Télécharger un modèle Excel automatisé de budget mariage automatisé avec...
Read more
Manipulation des Tableaux en Python avec Numpy
Numpy est une bibliothèque puissante et efficace pour la manipulation...
Read more

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *