Postgresの導入から初期設定、PandasとSQLAlchemyモジュールでデータベースを読み書きする方法を紹介しています。Devプラン)で1万レコードまで使用することができ、Webアプリケーションの簡単な開発テスト、スクレイピングのデータの保管場所にぴったりです。Basicプランにアップグレードすると、1000万レコードまで使用することができます。詳しくはこちらでさっそく導入方法を見てみましょう。わずクレジットカードの登録が必須です。先にアカウントページでクレジットカードを登録させましょう。appsコマンドで、Herokuアカウントに登録されているアプリケーション一覧が表示されます。createコマンドを使用して新規作成します。作成方法にはアプリケーション名を指定する方法としない方法の2パターンがあります。指定しない場合、適当な名前が設定されます。}}注意アプリ名を指定した場合、他のアプリケーション(Heroku内の全てのアプリが対象)と名前が被っているとアプリケーションを作成できません。Postgresを操作するためのセットアップを行います。}}psqlコマンドが使えない人は、Homebrewを使ってPostgreSQLをローカルPCにインストールします。11.2タイムゾーンを変更するSTEP.1デフォルトのタイムゾーンを確認するHerokuのサーバー上のタイムゾーンは、デフォルトでUTC時間になっているので、日本時間(Asia/Tokyo)に変更します。'Asia/Tokyo';データベース名が分からない場合は、ここをクリック以下のコマンドで、アプリケーションに紐付いているデータベースのURLを得ることができます。}}STEP.3確認するちゃんと変更されたか、もう一度確認します。pg:psqlコマンドで接続し直します。}}PandasでPostgreSQLを操作する個人的に、PythonからPostgreSQLのレコードを読み込んだり追加したりする方法で、もっとも簡単かつラクな方法を紹介します。それはpandas.DataFrameのsql系のメソッドを使う方法です。pandas.DataFrameをデータベースのテーブルに追加するそれぞれ順に紹介します。DataFrameとしてテーブルを読み込むpandas.DataFrameのread_sqlメソッドを使用すると、PostgreSQLのテーブルをDataFrameとして変数に格納することが出来ます。con)必須パラメータは、以下の2つです。SQLAlchemyのサーバー接続エンジンまたはデータベースURLもっと詳しくパラメータのことを知りたい方は、Pandasの公式ページからどうぞデータベースとDataFrameを繋げるためにO/RマッパーであるSQLAlchemyモジュールをインストールします。sqlalchemyそれでは、pandas.DataFrameのread_sqlメソッドとsqlalchemyクラスのcreate_engineメソッドを使用して、PostgreSQLからテーブルをDataFrameに格納するサンプルプログラムを見てみましょう。hackデータベースのURLが分からない場合は、ここをクリック以下のコマンドでHerokuのアプリケーションに紐付けられているデータベースのURLを得ることが出来ます。index)設定するパラメータは、以下の4つです。DataFrameのインデックスをテーブルに追加するかどうかもっと詳しくパラメータのことを知りたい方は、Pandasの公式ページからどうぞpandas.DataFrameのto_sqlメソッドについて補足すると、デフォルトのデータベースはSQLiteなので、必ずconパラメータにはデータベースのURLではなく、SQLAlchemyのサーバー接続エンジンを指定しなければいけません。index=False)ターミナルに戻って、ちゃんとデータベースに追加されているか確認しましょう。rows)きちんと追加されていましたね。nameパラメータのテーブル名を間違えてしまうと、PostgreSQLに新しくテーブルが作成されてしまうので注意しましょう。:Pythonこの記事を書いた人たぬ効率沼ブロガールーチンワークを自動化で瞬殺することに人生の楽しさを見つけた効率沼ブロガーです。本業は「データ分析」と「作業の効率化」を生業としているデータアナリスト。PythonとGASに人生救われました。当ブログは、おかげさまで月間12万PV。2020年までに30万PV目指して頑張ってます。