def get_age_spans(): query = """ SELECT age_group_id, age_group_years_start, age_group_years_end FROM shared.age_group""" db = EpiDB('epi') eng = db.get_engine(db.dsn_name) ags = pd.read_sql(query, eng) return ags
def get_age_weights(): query = """ SELECT age_group_id, age_group_weight_value FROM shared.age_group_weight WHERE gbd_round_id = 3""" db = EpiDB('epi') eng = db.get_engine(db.dsn_name) aws = pd.read_sql(query, eng) return aws
def get_pop(): query = """ SELECT age_group_id, year_id, location_id, sex_id, pop_scaled FROM mortality.output o LEFT JOIN mortality.output_version ov using (output_version_id) WHERE ov.is_best = 1 AND year_id >= 1980 AND year_id <= 2015""" db = EpiDB('cod') eng = db.get_engine(db.dsn_name) pop = pd.read_sql(query, eng) return pop
def get_pop(filters={}): query = """ SELECT o.age_group_id, year_id, o.location_id, o.sex_id, pop_scaled FROM mortality.output o LEFT JOIN mortality.output_version ov using (output_version_id) LEFT JOIN shared.age_group a using (age_group_id) LEFT JOIN shared.location l using (location_id) LEFT JOIN shared.sex s using (sex_id) WHERE ov.is_best = 1 AND year_id >= 1980 AND year_id <= 2015""" for k, v in filters.iteritems(): v = np.atleast_1d(v) v = [str(i) for i in v] query = query + " AND {k} IN ({vlist})".format( k=k, vlist=",".join(v)) db = EpiDB('cod') eng = db.get_engine(db.dsn_name) pop = pd.read_sql(query, eng) return pop
from hierarchies import dbtrees from transmogrifier import gopher, maths import pandas as pd import numpy as np from itertools import cycle from db import EpiDB from multiprocessing import Queue, Process from . import git_info edb = EpiDB() engine = edb.get_engine('epi') sentinel = None class SevSplitter(object): def __init__(self, parent_meid, prop_drawfile=None): self.parent_meid = parent_meid self.lt = dbtrees.loctree(None, location_set_id=35) self.ags = self.age_groups() self.child_meids = self.get_children() if prop_drawfile is None: self.props = self.get_split_proportions() self.props = self.gen_proportion_draws() else: self.props = pd.read_csv(prop_drawfile) def get_children(self): q = """ SELECT parent_meid, child_meid FROM severity_splits.hierarchy h JOIN severity_splits.hierarchy_version hv