ホームページ > データベース > mysql チュートリアル > Pandas DataFrame を MySQL データベースに効率的に挿入するにはどうすればよいですか?

Pandas DataFrame を MySQL データベースに効率的に挿入するにはどうすればよいですか?

DDD
リリース: 2024-12-04 06:29:16
オリジナル
580 人が閲覧しました

How Can I Efficiently Insert a Pandas DataFrame into a MySQL Database?

MySQLdb 経由で Pandas データフレームをデータベースに挿入する

Python を使用した MySQL への接続は簡単で、行挿入などの操作は十分にサポートされています。ただし、Pandas データフレーム全体を既存のテーブルに挿入するとなると、直接挿入は可能ですか、それとも行の反復処理が必要ですか?

to_sql を使用した直接挿入

MySQL にデータフレームを挿入するための推奨される方法は、to_sql を使用することです。メソッド:

df.to_sql(con=con, name='table_name_for_df', if_exists='replace', flavor='mysql')
ログイン後にコピー

MySQLdb との接続セットアップ

MySQLdb を使用して MySQL への接続を確立するには、次のコマンドを実行します:

from pandas.io import sql
import MySQLdb

con = MySQLdb.connect()  # may need additional connection parameters
ログイン後にコピー

風味とif_exists

write_frame のフレーバーを 'mysql' に設定すると、MySQL への書き込みが可能になります。 if_exists パラメータは、テーブルがすでに存在する場合の動作を制御します。オプションは「fail」、「replace」、「append」です。

単純な例を考えてみましょう。列 ID、data1、data2 と一致する Pandas を含むテーブルdataframe:

df = pd.DataFrame({'ID': [1, 2, 3], 'data1': ['a', 'b', 'c'], 'data2': [10, 20, 30]})
ログイン後にコピー

to_sql メソッドを使用してこのデータフレームをデータベースに挿入すると、次のようになります:

sql.write_frame(df, con=con, name='example_table', if_exists='replace', flavor='mysql')
ログイン後にコピー

この例では、「example_table」はデータベース内のテーブル名です。 「replace」は、既存のテーブルがデータフレームのデータで置き換えられることを意味します。

以上がPandas DataFrame を MySQL データベースに効率的に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート