Spaces:
Runtime error
Runtime error
from pathlib import Path | |
import json | |
from collections import Counter | |
import operator | |
import numpy as np | |
import matplotlib.pyplot as plt | |
from string import ascii_lowercase as alc | |
from string import ascii_uppercase as auc | |
# assign directory | |
directory = 'HFFiles' | |
arch_list = [] | |
invalid_counter = 0 | |
# iterate over files in directory | |
files = Path(directory).glob('*.json') | |
for file in files: | |
f = open(file) | |
try: | |
data = json.load(f) | |
except: | |
# print(str(file) + " does not look like valid JSON.") | |
invalid_counter += 1 | |
continue | |
try: | |
for i in data['architectures']: | |
# print(i) | |
arch_list.append(i[0]) | |
except: | |
# print(str(file) + " does not contain architectures key.") | |
invalid_counter += 1 | |
f.close() | |
my_dict = Counter(arch_list) | |
# print(my_dict) | |
print("\n") | |
print(str(invalid_counter) + " JSON files are invalid.") | |
for i in alc: | |
del my_dict[i] | |
for i in auc: | |
del my_dict[i] | |
causal_dict = {k:v for (k,v) in my_dict.items() if "Causal" in k} | |
sorted_causal_dict = dict(sorted(causal_dict.items(),key=operator.itemgetter(1),reverse=True)) | |
sorted_causal_dict = {key:val for key, val in sorted_causal_dict.items() if val != 1} | |
print(sorted_causal_dict) | |
labels, values = zip(*sorted_causal_dict.items()) | |
indexes = np.arange(len(labels)) | |
width = 1 | |
plt.figure(figsize=(16,9)) | |
plt.bar(indexes, values, width) | |
plt.xticks(indexes + width * 0.5, labels) | |
plt.xticks(rotation=90) | |
plt.show() |