Я пытаюсь отформатировать структуру данных в соответствии с моими потребностями.Из списка диктов я хочу создать диктат списков.Исходя из этой структуры данных:
[{'accuracy': 0.04584040881114014,
'epoch': 0,
'loss': 3.908684137519228,
'name': 'test14',
'val_accuracy': 0.1878172606229782,
'val_loss': 3.8432216644287114},
{'accuracy': 0.1612903245539738,
'epoch': 1,
'loss': 3.8308442072066873,
'name': 'test14',
'val_accuracy': 0.1878172606229782,
'val_loss': 3.4720854759216313},
{'accuracy': 0.056027164736506485,
'epoch': 0,
'loss': 3.9064058800099866,
'name': 'test15',
'val_accuracy': 0.1878172606229782,
'val_loss': 3.8064255714416495},
{'accuracy': 0.16129032566713356,
'epoch': 1,
'loss': 3.7856348285448367,
'name': 'test15',
'val_accuracy': 0.1878172606229782,
'val_loss': 3.5590925216674805}]
я хотел бы добиться чего-то подобного:
{'test14': [{'accuracy': 0.04584040881114014,
'epoch': 0,
'loss': 3.908684137519228,
'val_accuracy': 0.1878172606229782,
'val_loss': 3.8432216644287114},
{'accuracy': 0.1612903245539738,
'epoch': 1,
'loss': 3.8308442072066873,
'val_accuracy': 0.1878172606229782,
'val_loss': 3.4720854759216313}],
'test15': [{'accuracy': 0.056027164736506485,
'epoch': 0,
'loss': 3.9064058800099866,
'name': 'test15',
'val_accuracy': 0.1878172606229782,
'val_loss': 3.8064255714416495},
{'accuracy': 0.16129032566713356,
'epoch': 1,
'loss': 3.7856348285448367,
'name': 'test15',
'val_accuracy': 0.1878172606229782,
'val_loss': 3.5590925216674805}]}
So far I succeed to have something like that :
{'test14': {'accuracy': 0.1612903245539738,
'epoch': 1,
'loss': 3.8308442072066873,
'val_accuracy': 0.1878172606229782,
'val_loss': 3.4720854759216313},
'test15': {'accuracy': 0.16129032566713356,
'epoch': 1,
'loss': 3.7856348285448367,
'val_accuracy': 0.1878172606229782,
'val_loss': 3.5590925216674805}}
Используя этот фрагмент кода:
for entry in data:
name = entry.pop('name')
n_dict[name] = entry
Но этоэто примечание, принимающее все значения.Требуется только один словарь на ключ.Я явно что-то здесь упускаю.Не могли бы вы зажечь меня на этом?