pandasのDataFrameからtableを作成するメモ
DataFrameをそのままto_sqlすると、postgresにはインサートできなかった
before.py
import pandas as pd
import psycopg2
db = "dbname=postgres host=localhost user=username"
conn = psycopg2.connect(db)
df = pd.read_csv("sample.csv")
df.to_sql(df,"table_name", conn, if_exist="replace", index=False)
いろいろ調べた結果、sqliteへの書き込みがデフォルトらしいので変更
after.py
import pandas as pd
from sqlalchemy import create_engine
df = pd.read_csv("sample.csv")
engine=create_engine("postgresql://username@hostname:port/dbname")
df.to_sql("table_name", engine, if_exist="replace", index=False)
read_sqlはbeforeのやり方で問題なかった
参考>http://stackoverflow.com/questions/23103962/how-to-write-dataframe-to-postgres-table