-
Notifications
You must be signed in to change notification settings - Fork 0
/
labels_to_csv.py
36 lines (27 loc) · 1.09 KB
/
labels_to_csv.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import os
import csv
import json
def export_to_csv(path, files):
with open(r"Data/modifiers_dict.json", "r") as json_mods_dict:
modifiers_dict = json.load(json_mods_dict)
csv_file = open(path, "w", newline="")
csv_writer = csv.writer(csv_file)
labels = {}
for json_path in files:
with open(json_path, "r") as file:
json_labels = json.load(file)
for key, value in modifiers_dict.items():
if key in json_labels:
labels.setdefault(modifiers_dict[key], [])
labels[modifiers_dict[key]].append(json_labels[key])
labels_rows = [row for row in map(list, zip(*labels.values()))]
csv_writer.writerow(labels.keys())
csv_writer.writerows(labels_rows)
csv_file.close()
if __name__ == "__main__":
with open(r"config/project_tmp.json", "r") as json_project:
structure = json.load(json_project)
json_1 = r"path.to.labels.json"
json_2 = r"path.to.labels.json"
export_path = os.path.join(structure["labels"], r"labels.csv")
export_to_csv(export_path, json_1, json_2)