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.
ClinicalTrialsDataProcessing/scripts/import-icd10_to_cause.py

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})