Moving fiscal data from a pandas dataframe to a sqlite local database
This post includes code from Scalable-Data-Analysis-in-Python-with-Dask and coiled-examples.
import numpy as np
import pandas as pd
df = pd.read_csv('df_panel_fix.csv')
df.columns
df_subset = df[["year", "reg", "province", "gdp", "fdi", 'it',"specific"]]
df_subset
df_subset.columns = ["year", "region", "province", "gdp", "fdi", 'it',"specific"]
df_subset
import sqlalchemy as db
from sqlalchemy import create_engine
import sqlite3
import pandas as pd
engine = db.create_engine('sqlite:///fiscal_data.db')
connection = engine.connect()
metadata = db.MetaData()
fiscal_data = db.Table('fiscal_data', metadata,
db.Column('year',db.Integer, nullable=True, index=False),
db.Column('region',db.String, nullable=True),
db.Column('province',db.String, nullable=True),
db.Column('gdp',db.String, nullable=True),
db.Column('fdi',db.Integer, nullable=True),
db.Column('it',db.Integer, nullable=True),
db.Column('specific', db.Integer, nullable=True)
)
metadata.create_all(engine) #Creates the table
fiscal_data
df_subset.to_sql('fiscal_data', con=engine, if_exists='append', index=False)
engine.execute("SELECT year, region, province, gdp FROM fiscal_data LIMIT 10").fetchall()
sql = """
SELECT year
, region
, province
, gdp
FROM fiscal_data
"""
cnxn = connection
df = pd.read_sql(sql, cnxn)
df.tail(30)
#http://manpages.ubuntu.com/manpages/precise/man1/sqlite3.1.html
# sqlite3 fiscal_data.db
# create table memos(text, priority INTEGER);
# insert into memos values('example 1', 10);
# insert into memos values('example 2', 100);
# select * from memos;
# sqlite3 -line fiscal_data.db 'select * from memos where priority > 20;'