associate_occupation_DATINI_idRESTORE.py 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. #DATINI occupazioni, associa gli ID Restore ai luoghi privi di ID gerarchici
  2. import csv
  3. import codecs
  4. import pandas as pd
  5. import re
  6. import os
  7. import io
  8. import tokenize
  9. output = open('association_occupation_DATINI_luoghi_restore.csv', 'w')
  10. csvwriter = csv.writer(output)
  11. params = ['recordid', 'occupation_1', 'place_occupation_1_PROVINCIA', 'ID_provincia_1', 'place_occupation_1_COMUNE', 'ID_comune_1', 'place occupation 1 MICROTOPONIMO', 'ID_micro_1', 'place occupation 1 ENTE', 'ID_ente_1', 'occupation_2', 'place_occupation_2_PROVINCIA', 'ID_provincia_2', 'place_occupation_2_COMUNE', 'ID_comune_2', 'place occupation 2 MICROTOPONIMO', 'ID_micro_2', 'place occupation 2 ENTE', 'ID_ente_2']
  12. csvwriter.writerow(params)
  13. def get_ID_micro (idmicro, micro):
  14. link_file = open('//Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/Toponimi Gettatelli - TUTTI toponimi - Nuovo.csv')
  15. reader = csv.DictReader(link_file)
  16. for row in reader:
  17. ass_micro = row['TOPONIMO'].lower()
  18. if idmicro == "" and " ":
  19. if micro != "" and " ":
  20. if micro == ass_micro:
  21. return (row['ID RESTORE'])
  22. else:
  23. return idmicro
  24. def get_ID_comune (idcomune, comune):
  25. link_file = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/Toponimi Gettatelli - TUTTI toponimi - Nuovo.csv')
  26. reader = csv.DictReader(link_file)
  27. for row in reader:
  28. for row in reader:
  29. ass_comune = row['TOPONIMO'].lower()
  30. if idcomune == "" and " ":
  31. if comune != "" and " ":
  32. if comune == ass_comune:
  33. return (row['ID RESTORE'])
  34. else:
  35. return idcomune
  36. def get_ID_provincia (idprovincia, provincia):
  37. link_file = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/Toponimi Gettatelli - TUTTI toponimi - Nuovo.csv')
  38. reader = csv.DictReader(link_file)
  39. for row in reader:
  40. ass_provincia = row['TOPONIMO'].lower()
  41. if idprovincia == "" and " ":
  42. if provincia != "" and " ":
  43. if provincia == ass_provincia:
  44. return (row['ID RESTORE'])
  45. else:
  46. return idprovincia
  47. csv_occupation = open('/Users/leonardocanova/Library/CloudStorage/OneDrive-UniversityofPisa(1)/Documenti/Progetti università/OVI/Programmazione/ASPO/Luoghi/association_occupation_DATINI_luoghi.csv')
  48. reader = csv.DictReader(csv_occupation)
  49. for row in reader:
  50. line = []
  51. recordid = row['recordid']
  52. occupation_1 = row['occupation_1']
  53. occupation_2 = row['occupation_2']
  54. place_occupation_1_PROVINCIA = row['place_occupation_1_PROVINCIA'].lower()
  55. place_occupation_1_COMUNE = row['place_occupation_1_COMUNE'].lower()
  56. place_occupation_1_MICROTOPONIMO = row['place occupation 1 MICROTOPONIMO'].lower()
  57. place_occupation_1_ENTE = row['place occupation 1 ENTE'].lower()
  58. place_occupation_2_PROVINCIA = row['place_occupation_2_PROVINCIA'].lower()
  59. place_occupation_2_COMUNE = row['place_occupation_2_COMUNE'].lower()
  60. place_occupation_2_MICROTOPONIMO = row['place occupation 2 MICROTOPONIMO'].lower()
  61. place_occupation_2_ENTE = row['place occupation 2 ENTE'].lower()
  62. ID_provincia_1 = row ['ID_provincia_1']
  63. ID_comune_1 = row ['ID_comune_1']
  64. ID_micro_1 = row ['ID_micro_1']
  65. ID_ente_1 = row ['ID_ente_1']
  66. ID_provincia_2 = row ['ID_provincia_2']
  67. ID_comune_2 = row ['ID_comune_2']
  68. ID_micro_2 = row ['ID_micro_2']
  69. ID_ente_2 = row ['ID_ente_2']
  70. ID_provincia_1_R = get_ID_provincia (ID_provincia_1, place_occupation_1_PROVINCIA)
  71. ID_comune_1_R = get_ID_comune (ID_comune_1, place_occupation_1_COMUNE)
  72. ID_micro_1_R = get_ID_micro (ID_micro_1, place_occupation_1_MICROTOPONIMO)
  73. ID_provincia_2_R = get_ID_provincia (ID_provincia_2, place_occupation_2_PROVINCIA)
  74. ID_comune_2_R = get_ID_comune (ID_comune_2, place_occupation_2_COMUNE)
  75. ID_micro_2_R = get_ID_micro (ID_micro_2, place_occupation_2_MICROTOPONIMO)
  76. line.append (recordid)
  77. line.append (occupation_1)
  78. line.append (place_occupation_1_PROVINCIA)
  79. line.append (ID_provincia_1_R)
  80. line.append (place_occupation_1_COMUNE)
  81. line.append (ID_comune_1_R)
  82. line.append (place_occupation_1_MICROTOPONIMO)
  83. line.append (ID_micro_1_R)
  84. line.append (place_occupation_1_ENTE)
  85. line.append (ID_ente_1)
  86. line.append (occupation_2)
  87. line.append (place_occupation_2_PROVINCIA)
  88. line.append (ID_provincia_2_R)
  89. line.append (place_occupation_2_COMUNE)
  90. line.append (ID_comune_2_R)
  91. line.append (place_occupation_2_MICROTOPONIMO)
  92. line.append (ID_micro_2_R)
  93. line.append (place_occupation_2_ENTE)
  94. line.append (ID_ente_2)
  95. csvwriter.writerow(line)
  96. #print (line)
  97. output.close()