diff --git a/UMLS_Extractor/insertUMLSConcepts.py b/UMLS_Extractor/insertUMLSConcepts.py new file mode 100644 index 0000000000000000000000000000000000000000..792080e099cad39234eb4c1783e43c0b20d5c422 --- /dev/null +++ b/UMLS_Extractor/insertUMLSConcepts.py @@ -0,0 +1,56 @@ +import configparser +import mysql.connector + +#Diccionario con los datos de conexion a la BBDD (se lee desde archivo de configuracion: DEFAULT --> LOCAL, TESTING --> ARES) +configuration = configparser.ConfigParser() +configuration.read('config.ini') + +config2 = {'user':configuration['ARES']['DB_USER'], +'password':configuration['ARES']['DB_PASSWORD'], +'port':configuration['ARES']['DB_PORT'], +'host':configuration['ARES']['DB_HOST'], +'db':configuration['ARES']['DB_NAME'], +'auth_plugin':configuration['ARES']['DB_AUTH_PLUGIN'] +} + +text = open("./output2.txt").read() +lines = iter(text.split("\n")) +#Conectamos con nuestra BD +cnx = mysql.connector.connect(**config2) +#Creamos el cursor +cursor = cnx.cursor() + +try: + for line in lines: + item = line.split("\t") + query = "" + #print(item) + + if("JKES" in item): #JKES + query = "insert ignore into concept_extraction.note_umls (note_id,umls_id,begin,end,concept_text,origin) values ('"+item[3]+"','"+item[1]+"','"+item[4]+"','"+item[5]+"','"+item[0]+"','JKES');" + query2 = "insert ignore into concept_extraction.umls (umls_id,concept) values ('"+item[1]+"','"+item[0]+"');" + + elif("UMLS" in item): #UMLS + jkes_concept = item[0] + for j in range(6,len(item)): + aux = item[j].split(",") + noteID = aux[0].replace("(","").replace("'","") + begin = aux[1].replace("'","").strip() + end = aux[2].replace(")","").replace("'","").strip() + print(item[4]) + + query = "insert ignore into concept_extraction.note_umls (note_id,umls_id,levenshtein_distance,begin,end,concept_text,origin) values ('"+noteID+"','"+item[3]+"','"+item[4]+"','"+begin+"','"+end+"','"+item[0]+"','UMLS');" + query2 = "insert ignore into concept_extraction.umls (umls_id,concept) values ('"+item[3]+"','"+item[2]+"');" + + print(query2) + print(query) + cursor.execute(query2) + cnx.commit() + cursor.execute(query) + cnx.commit() + + cursor.close() + cnx.close() + +except mysql.connector.IntegrityError as err: + print("Error: {}".format(err))