2015-10-12 1 views
6
次のように私はsqliteのDBに上記のデータフレームを格納しています
RUN YR AP15 PMTE  RSPC NPPC  NEE  SSF  PRK QDRN 
0 1 2008 4.53 0.04 641.21 16.8 624.41 328.66 2114.51  0 
1 1 2009 3.17 0.03 1428.30 0.0 1428.30 23.58  3.20  0 
2 1 2010 6.20 0.03 1124.97 0.0 1124.97 23.94 18.45  0 
3 1 2011 5.38 0.02 857.76 0.0 857.76 28.40 42.54  0 
4 1 2012 7.32 0.02 831.42 0.0 831.42 23.92 25.58  0 

:私はそれをリードバックしようとすると、しかしエラー開くsqliteのテーブル使ってパンダは

from sqlalchemy import create_engine 
db_name = 'sqlite:///C:\\tmp.db' 
engine = create_engine(db_name) 
df.to_sql(db_name, engine, if_exists='append') 

、私はエラーを取得する:

df = pandas.read_sql_table(db_name, 'sqlite:///C:\\tmp.db') 

ValueError: Table sqlite:///C:tmp.db not found 

私はSQLiteスタジオで見ることができるので、tmp.dbが作成されます。私は間違って何をしていますか?

+0

'sqlite:/// C:/tmp.db'は動作しますか? – Rudi

+0

残念ながら、それは – user308827

+0

ではありません。sqlalchemy URLを指定する構文については、こちら[http://docs.sqlalchemy.org/ja/rel_0_9/core/engines.html#sqlite]で説明されています。ファイルが存在していますか? – joris

答えて

2

エンジンオブジェクトの代わりに文字列URLを指定するのは、最近リリースされた0.17.0に追加されただけです。したがって、最初にエンジンオブジェクトを構築する必要があります。

engine = sqlalchemy.create_engine('sqlite:///C:\\tmp.db') 
df = pandas.read_sql_table(db_name, engine) 
関連する問題