1. 学ぶ
  2. /
  3. コース
  4. /
  5. Pythonで学ぶデータベース入門

Connected

演習

CSV をテーブルに読み込む

これまでテーブルへのデータ挿入はとても順調です!ここでは、CSV ファイルの中身をテーブルに読み込む方法を学びます。

一つの方法は、CSV ファイルを1行ずつ読み込み、各行から辞書を作って、前の演習で行ったように insert() を使うやり方です。

しかし、pandas を使えばもっと速くできます。read_csv() 関数を使って CSV ファイルを DataFrame に読み込めます(この関数はおなじみだと思いますが、復習したい場合はコンソールで help(pd.read_csv) を実行して確認できます)。その後、DataFrame に対して .to_sql()(docs)メソッドを呼び出すと、データベース内の SQL テーブルへ書き込めます。DataFrame の列は SQL テーブルの列と一致している必要があります。

.to_sql() には多くの引数がありますが、この演習では次のものを使います。

  • name は SQL テーブル名(文字列)です。
  • con はデータのアップロードに使うデータベースへの接続です。
  • if_exists は、同名テーブルがすでにデータベースに存在する場合の動作を指定します。取りうる値は "fail"、"replace"、"append" です。
  • index(True または False)は、DataFrame のインデックスを列として書き出すかどうかを指定します。

この演習では、census.csv ファイルに含まれるデータを、既存のテーブル "census" にアップロードします。データベースへの connection はすでに作成済みです。

指示1 / 2

undefined XP
    1
    2
  • pd.read_csv() を使って "census.csv" ファイルを DataFrame に読み込みます。ファイルにはヘッダー行がないため、header 引数は None に設定してください。
  • データベース内の "census" テーブルの列に合わせて、census_df の列名を "state"、"sex"、age、"pop2000"、"pop2008" に変更してください。