CSV_to_CSV_Confronto_OnomasticaCeppi.py 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. import csv
  2. import codecs
  3. import pandas as pd
  4. import re
  5. import os
  6. import io
  7. import tokenize
  8. confronto_data = open('nomi_ceppi.csv', 'w')
  9. csvwriter = csv.writer(confronto_data)
  10. params = ['recordId', 'segnatura ms.','nameEntry@normal','nameEntry@prime','genere','nome proprio',
  11. 'nome di famiglia','patronimico/matronimico','avo 1','avo 2','avo 3','provenienza',
  12. 'Variante','Alias','Qualifica','occupation','place_occupation_Qualifica','biogHist p']
  13. csvwriter.writerow(params)
  14. def getIdAspo(nomeProprio, cognome, patronimico, avo1, avo2, avo3):
  15. link_file = open('/Users/alessiaspadi/Documents/RESTORE/temp_ASPO/Onomastica_Datini.csv')
  16. reader = csv.DictReader(link_file)
  17. for row in reader:
  18. givenName = row['nome proprio'].lower().rstrip().lstrip().replace("\n", "")
  19. familyName = row['nome di famiglia'].lower().rstrip().lstrip().replace("\n", "")
  20. patronymic = row['patronimico/matronimico'].lower().rstrip().lstrip().replace("\n", "")
  21. relative1 = row['avo 1'].lower().rstrip().lstrip().replace("\n", "")
  22. relative2 = row['avo 2'].lower().rstrip().lstrip().replace("\n", "")
  23. relative3 = row['avo 2'].lower().rstrip().lstrip().replace("\n", "")
  24. np = nomeProprio.lower().rstrip().lstrip().replace("\n", "")
  25. ndf = cognome.lower().rstrip().lstrip().replace("\n", "")
  26. pm = patronimico.lower().rstrip().lstrip().replace("\n", "")
  27. a1 = avo1.lower().rstrip().lstrip().replace("\n", "")
  28. a2 = avo2.lower().rstrip().lstrip().replace("\n", "")
  29. a3 = avo3.lower().rstrip().lstrip().replace("\n", "")
  30. if (givenName == np) and (familyName == ndf) and (patronymic == pm):
  31. return row['recordId']
  32. '''and (relative1 == a1) and (relative2 == a2) and (relative3 == a3)'''
  33. merge_file = open('/Users/alessiaspadi/Documents/RESTORE/temp_ASPO/ceppo_vecchio.csv')
  34. reader = csv.DictReader(merge_file)
  35. for row in reader:
  36. line = []
  37. segnatura = row['segnatura ms.']
  38. nameEntryNormal = row['nameEntry@normal']
  39. nameEntryPrima = row['nameEntry@prime']
  40. genere = row['genere']
  41. nomeProprio = row['nome proprio']
  42. cognome = row['nome di famiglia']
  43. patronimico = row['patronimico/matronimico']
  44. avo1 = row['avo 1']
  45. avo2 = row['avo 2']
  46. avo3 = row['avo 3']
  47. provenienza = row['provenienza']
  48. variante = row['Variante']
  49. alias = row['Alias']
  50. qualifica = row['Qualifica']
  51. occupazione = row['occupation']
  52. luogo_occupazione = row['place_occupation_Qualifica']
  53. bioghist = row['biogHist p']
  54. id_aspo = getIdAspo(nomeProprio, cognome, patronimico, avo1, avo2, avo3)
  55. if id_aspo is not None:
  56. line.append(id_aspo)
  57. else:
  58. line.append("")
  59. line.append(segnatura)
  60. line.append(nameEntryNormal)
  61. line.append(nameEntryPrima)
  62. line.append(genere)
  63. line.append(nomeProprio)
  64. line.append(cognome)
  65. line.append(patronimico)
  66. line.append(avo1)
  67. line.append(avo2)
  68. line.append(avo3)
  69. line.append(provenienza)
  70. line.append(variante)
  71. line.append(alias)
  72. line.append(qualifica)
  73. line.append(occupazione)
  74. line.append(luogo_occupazione)
  75. line.append(bioghist)
  76. csvwriter.writerow(line)
  77. confronto_data.close()