You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
833 B
Python
32 lines
833 B
Python
from drugtools.env_setup import ENV,postgres_conn
|
|
from psycopg2 import extras
|
|
from collections import namedtuple
|
|
|
|
|
|
FILES=[
|
|
"../non-db_data_sources/GBD and ICD-10_(2019 version)/NONFATAL_cause2code.psv",
|
|
"../non-db_data_sources/GBD and ICD-10_(2019 version)/COD_cause2code.psv"
|
|
]
|
|
SEP="|"
|
|
|
|
sql = """
|
|
INSERT INTO "DiseaseBurden".icd10_to_cause
|
|
(code,cause_text)
|
|
VALUES
|
|
(%(code)s,%(cause)s)
|
|
"""
|
|
|
|
|
|
#read in files
|
|
#adjust codes?
|
|
#load files to table
|
|
|
|
with postgres_conn() as pconn, pconn.cursor(cursor_factory=extras.DictCursor) as pcurse:
|
|
for fpath in FILES:
|
|
with open(fpath,"r") as fh:
|
|
for line in fh.readlines():
|
|
code,cause = line.split(SEP)
|
|
code = code.strip()
|
|
cause = cause.strip()
|
|
|
|
pcurse.execute(sql,{"code":code,"cause":cause}) |