У меня есть очень большой словарь, содержащий кортежи как ключи и их значения. Этот словарь должен представлять матрицу смежности с векторами совпадения слов, например, «работа» появляется с «опытом» 16 раз, а «работа» появляется с «услугами» 15 раз. Независимо от того, является ли это предпочтительным методом хранения, другая проблема (с огромным количеством данных, которые у меня есть, вложенные словари стали кошмаром для обхода), но это просто то, что у меня есть сейчас.Преобразование словаря кортежей в матрицу numpy
Frequency:{
('work', 'experience'): 16,
('work', 'services'): 25,
('must', 'services'): 15,
('data', 'services'): 10,
...
...}
Благодаря предыдущему сообщению, я был в состоянии сделать простую бинарную матрицу смежности с NetworkX, просто с помощью этой методики:
A=Frequency.keys()
networkx.Graph(A)
Этот результат был велик тогда, но мой вопрос это то, что я должен сделать, чтобы преобразовать частоты в матрицу смежности с использованием его смежности значение в качестве значения в матрице, так что результат будет это будет выглядеть по линии этого:
array([[ 0., 16., 25., 0.],
[ 16., 0., 1., 0.],
[ 25., 1., 0., 1.],
[ 10., 0., 0., 0.]
...)
Прошу прощения, если это похоже на предыдущие сообщения, но я просто не могу найти правильный способ преобразования этих кортежей в матрицу, которую я могу использовать в NetworkX. Я предполагаю, что я буду использовать numpy, но я не могу найти документацию для такого метода.
Спасибо заранее,
Рон
Большое спасибо, человек. Ты помогаешь мне левым и правым. –