Ajouter une image à la trame de données Pandas
Parfois, nous voulons créer une base de données pandas composée d’images. Nous pouvons réaliser cette tâche en utilisant le module HTML de Python Pandas.
Nous allons convertir le chemin de l’image en une balise HTML
. Ensuite, convertissez le dataframe en tableau HTML et affichez l’image. Python a un module intégré appelé HTML
. Nous pouvons encoder et décoder du HTML en Python.
Utiliser le module HTML pour rendre l’image dans un DataFrame Pandas
Dans le code suivant, nous avons créé un dataframe contenant les informations sur l’artiste et le titre de la peinture. Pour afficher les images dans ce dataframe, nous allons faire une liste contenant les chemins
des images.
Nous allons attribuer cette liste au dataframe sous forme de colonne. Nous avons créé une fonction qui convertit le chemin vers la balise img
du HTML en concaténant <img src=
avec le chemin
.
La fonction redimensionne également l’image à une petite échelle à l’aide de l’attribut width. Ensuite, nous avons converti le dataframe pandas en un tableau HTML en utilisant la méthode to_html()
.
Nous avons appelé la méthode HTML pour rendre les images. Enfin, nous avons affiché l’ensemble du dataframe en utilisant la méthode display()
.
Exemple de code :
# Python 3.x
import pandas as pd
from IPython.core.display import HTML
df = pd.DataFrame(
[
["Van Gogh", "Starry Night"],
["Van Gogh", "Sunflowers"],
["Van Gogh", "Cafe Terrace at Night"],
],
columns=["Artist", "Painting Title"],
)
painting_images = [
"https://upload.wikimedia.org/wikipedia/commons/thumb/e/ea/Van_Gogh_-_Starry_Night_-_Google_Art_Project.jpg/1200px-Van_Gogh_-_Starry_Night_-_Google_Art_Project.jpg",
"https://iiif.micr.io/TZCqF/full/1280,/0/default.jpg",
"https://upload.wikimedia.org/wikipedia/commons/thumb/2/21/Vincent_Willem_van_Gogh_-_Cafe_Terrace_at_Night_%28Yorck%29.jpg/816px-Vincent_Willem_van_Gogh_-_Cafe_Terrace_at_Night_%28Yorck%29.jpg",
]
df["Painting"] = painting_images
def to_img_tag(path):
return '<img src="' + path + '" width="50" >'
display(HTML(df.to_html(escape=False, formatters=dict(Painting=to_img_tag))))
Production:
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedInArticle connexe - Pandas DataFrame
- Comment obtenir les en-têtes de colonne de Pandas DataFrame sous forme de liste
- Comment supprimer une colonne de Pandas DataFrame
- Comment convertir la colonne DataFrame en date-heure dans Pandas
- Comment convertir un float en un entier dans Pandas DataFrame
- Comment trier le DataFrame de Pandas par les valeurs d'une colonne
- Comment obtenir l'agrégat des Pandas par groupe et par somme