def print_string(results_dict):
"""
creates an easy printable string from a results dict
"""
max_hlen = 42
hlen = 7 + len(' '.join(list(results_dict)))
maxlen = (max_hlen-7) // len(results_dict) -2
table = prettytable.PrettyTable(header=True, vrules=prettytable.NONE)
table.border = False
table.padding_width = 1
cv = True if type(results_dict[list(results_dict.keys())[0]][0]) is list else False
if cv:
table.add_column('', ['VAcc', 'V-F1', 'TAcc', 'T-F1'])
else:
table.add_column('', ['CAcc', 'C-F1', 'RAcc', 'R-F1'])
for exp in results_dict:
res = results_dict[exp]
scores = []
if cv:
for fold in res:
scores.append(fold[:4])
scores = np.mean(scores,0)
else:
scores = np.array([res[0],res[1],res[2],res[3]])
table.add_column(exp[0:maxlen] if hlen > max_hlen else exp,['{:.1f}%'.format(x*100) for x in scores])
return table.get_string()
评论列表
文章目录