import csv import codecs import pandas as pd import re import os import io import tokenize output = open('merge_microtoponimi_ASPO.csv', 'w') csvwriter = csv.writer(output) params = ['ID_PROVINCIA', 'toponimo_PROVINCIA', 'toponimo_PROVINCIA_upper', 'ID_RESTORE_comune', 'toponimo_COMUNE', 'toponimo_COMUNE_upper', 'ID_RESTORE_microtoponimo', 'MICROTPONIMO', 'MICROTOPONIMO_upper'] csvwriter.writerow(params) def associate_ID_provincia (provincia): link_file = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/merge_province_comuni_ASPO.csv') reader = csv.DictReader(link_file) for row in reader: ass_provincia = row['toponimo_PROVINCIA'] if (ass_provincia.lower() == provincia.lower()): return (row['ID_PROVINCIA']) def associate_upper_provincia (provincia): link_file = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/merge_province_comuni_ASPO.csv') reader = csv.DictReader(link_file) for row in reader: ass_provincia = row['toponimo_PROVINCIA'] if (provincia.lower() == ass_provincia.lower()): return (row['toponimo_PROVINCIA_upper']) def associate_ID_comune (comune): link_file = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/merge_province_comuni_ASPO.csv') reader = csv.DictReader(link_file) for row in reader: ass_comune = row['toponimo_COMUNE'] if (comune.lower() == ass_comune.lower()): return (row['ID_RESTORE']) def associate_upper_comune (comune): link_file = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/merge_province_comuni_ASPO.csv') reader = csv.DictReader(link_file) for row in reader: ass_comune = row['toponimo_COMUNE'] if (comune.lower() == ass_comune.lower()): return (row['toponimo_COMUNE_upper']) def associate_ID_RESTORE (microtoponimo): link_file = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/Toponimi Gettatelli - TUTTI toponimi - Nuovo.csv') reader = csv.DictReader(link_file) for row in reader: ass_microtoponimo = row['TOPONIMO'] if (ass_microtoponimo.lower() == microtoponimo.lower()): return (row['ID RESTORE']) csv_microtoponimi = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/luoghi - Microtoponimo_clean.csv') reader = csv.DictReader(csv_microtoponimi) for row in reader: line = [] toponimo_PROVINCIA = row['EVENTO PROVINCIA'] toponimo_PROVINCIA_upper = associate_upper_provincia(toponimo_PROVINCIA) ID_PROVINCIA = associate_ID_provincia(toponimo_PROVINCIA) toponimo_COMUNE = row['EVENTO COMUNE'] toponimo_COMUNE_upper = associate_upper_comune(toponimo_COMUNE) ID_RESTORE_comune = associate_ID_comune(toponimo_COMUNE) microtoponimo = row['EVENTO MICROTOPONIMO'] microtoponimo_upper = row['EVENTO MICROTOPONIMO UPPER'] ID_RESTORE_microtoponimo = associate_ID_RESTORE(microtoponimo) ID_RESTORE = associate_ID_RESTORE(toponimo_COMUNE) line.append (ID_PROVINCIA) line.append (toponimo_PROVINCIA) line.append (toponimo_PROVINCIA_upper) line.append (ID_RESTORE_comune) line.append (toponimo_COMUNE) line.append (toponimo_COMUNE_upper) line.append (ID_RESTORE_microtoponimo) line.append (microtoponimo) line.append (microtoponimo_upper) csvwriter.writerow(line) #print (line) output.close()