У меня есть следующие документы:
documents = ["Human machine interface for lab abc computer applications",
"A survey of user opinion of computer system response time",
"The EPS user interface management system",
"System and human system engineering testing of EPS",
"Relation of user perceived response time to error measurement",
"The generation of random binary unordered trees",
"The intersection graph of paths in trees",
"Graph minors IV Widths of trees and well quasi ordering",
"Graph minors A survey"]
Из которых я строю словосочетание:
wordmatrix = []
wordmatrix = [sentences.split(" ") for sentences in documents]
С выводом:
[['Человек »,« машина »,« интерфейс »,« для »,« лаборатория »,« abc »,« компьютер »,« приложения »], [« A »,« опрос »,« из »,« пользователь »,«мнение »,« о »,« компьютер »,« система »,« ответ »,« время »], [« The »,« EPS »,« пользователь »,« интерфейс »,« управление »,« система »],['Система', 'и', 'человек', 'система', 'разработка', 'тестирование', 'из', 'EPS'], ['Отношение', 'из', 'пользователь', 'воспринятый', «ответ», «время», «к», «ошибка», «измерение»], [«The», «поколение», «of», «случайный», «двоичный», «неупорядоченный», «деревья»], ['', 'Пересечение', 'граф', 'из', 'пути', 'in', 'деревья'], ['График', 'minors', 'IV', 'Widths', 'of ',' trees ',' and ',' well ',' quasi ',' ordering '], [' Graph ',' minors ',' A ',' survey ']]
Далее я хочу создать словарь с ключом для каждого документа, а слово в качестве ключа и в качестве значения - число, с которым слово встречается в документе.
Но я дошел до сих пор:
Инициализировать словари
dic1 = {}
dic2 = {}
d = {}
С первым словарем, дающим каждому документу ключ:
dic1 = dict(enumerate(sentence for sentence in wordmatrix))
с помощьювывод:
{0: [«Человек», «машина», «интерфейс», «для», «лаборатория», «abc», «компьютер», «приложения»], 1:['A', 'опрос', 'из', 'пользователь', 'мнение', 'из', 'компьютер', 'система', 'ответ', 'время'], 2: ['The', 'EPS ',' пользователь ',' интерфейс ',' управление ',' система '], 3: [' Система ',' и ',' человек ',' система ',' разработка ',' тестирование ',' из ', 'EPS'], 4: ['Отношение', 'из', 'пользователь', 'воспринимается', 'ответ', 'время', 'к', 'ошибка', 'измерение'], 5: ['«,» Поколение »,« из »,« случайный »,« двоичный »,« неупорядоченный »,« деревья »], 6: [« The »,« пересечение »,« граф »,« of »,« пути », 'in', 'trees'], 7: ['Graph', 'minors', 'IV', 'Widths', 'of', 'trees', 'and', 'well', 'quasi', 'упорядочение '], 8: [' Graph ',' minors ',' A ',' survey ']}
И второй словарь, превращающий каждое слово в ключ:
for sentence in wordmatrix:
for word in sentence:
dic2[word] = dic2.get(word, 0) + 1
С выходом:
{«Человек»: 1, «машина»: 1, «интерфейс»: 2, «для»: 1, «лаборатория»: 1, «abc»: 1, «компьютер»: 2, «приложения»: 1, «A»: 2, «опрос»: 2, «из»: 7, «пользователь»: 3, «мнение»: 1, «система»: 3, «ответ»: 2, «время ': 2,' The ': 3,' EPS ': 2,' management ': 1,' System ': 1,' и ': 2,' human ': 1,' engineering ': 1,' testing ': 1, «отношение»: 1, «воспринято»: 1, «к»: 1, «ошибка»: 1, «измерение»: 1, «генерация»: 1, «случайное число»: 1, «двоичное»: 1, «неупорядоченный»: 1, «деревья»: 3, «пересечение»: 1, «граф»: 1, «пути»: 1, «в»: 1, «график»: 2, «несовершеннолетние»: 2, «IV ': 1,' Widths ': 1,' well ': 1,' quasi ': 1,' ordering ': 1}
Однако я хотел бы объединить оба словаряв одном словаре, который должен выглядеть следующим образом: {0: {'Human': 1, 'machine': 1, 'interface': 2, ....}, 1: (и т. д.)}
Спасибо!