Maison > base de données > tutoriel mysql > Comment insérer un DataFrame Pandas dans une base de données MySQL à l'aide de MySQLdb ?

Comment insérer un DataFrame Pandas dans une base de données MySQL à l'aide de MySQLdb ?

Barbara Streisand
Libérer: 2024-12-06 05:34:11
original
453 Les gens l'ont consulté

How to Insert a Pandas DataFrame into a MySQL Database Using MySQLdb?

Insertion du cadre de données Pandas dans la base de données via MySQLDB

Question :

Comment pouvons-nous insérer directement une trame de données pandas entière dans une table de base de données MySQL existante en utilisant MySQLdb?

Réponse :

En utilisant la méthode write_frame du module pandas.io.sql, vous pouvez insérer un dataframe dans MySQL comme suit :

sql.write_frame(df, con=con, name='table_name', if_exists='replace', spice='mysql')

où :

  • df est la trame de données pandas à insérer.
  • con est un Objet de connexion MySQLdb.
  • name est le nom de la table à insérer into.
  • if_exists précise comment gérer une table existante :

    • 'fail' : ne faites rien si la table existe.
    • 'replace' : Supprimez la table et recréez-la avant d'insérer des données.
    • 'append' : Insérez des données dans la table existante si elle existe, sinon créez it.

Utilisation de la méthode to_sql :

La méthode préférée pour insérer des dataframes dans des bases de données SQL est désormais to_sql :

df.to_sql(con=con, name='table_name', if_exists='replace', spice='mysql')

Configuration de la connexion MySQLdb :

Établissez une connexion à MySQL à l'aide de MySQLdb :

depuis pandas.io import sql
import MySQLdb

con = MySQLdb.connect()

Exemple de code :

Pour une table avec ID, data1 et data2 colonnes, le script Python pour insérer le dataframe correspondant serait :

importer des pandas en tant que pd
import MySQLdb

df = pd.DataFrame({'ID' : [1, 2, 3], 'data1' : ['a', 'b', 'c'], ' data2' : [10, 20, 30]})

con = MySQLdb.connect()
sql.write_frame(df, con=con, name='table_name', if_exists='replace', spice='mysql')

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal