Я пытаюсь выполнить итерацию файла, содержащего текст, и вычислить сходство косинусов между текущей строкой и запросом, который пользователь поднял. Я уже обозначил запрос и строку и сохранил объединение своих слов в набор.Правильный способ вычисления косинусной подобия двух словарно-словари в python?
Пример:
line_tokenized = ['Karl', 'Donald', 'Ifwerson']
query_tokenized = ['Donald', 'Trump']
word_set = ['Karl', 'Donald', 'Ifwerson', 'Trump']
Теперь я должен создать словарь каждый для линии и запроса, содержащих пары слов частоты. Я думал о чем-то IKE это:
line_dict = {'Karl': 1, 'Donald': 1, 'Ifwerson': 1, 'Trump': 0}
query_dict = {'Karl': 0, 'Donald': 1, 'Ifwerson': 0, 'Trump': 1}
Но косинус сходство не будет вычислен правильно, как пар ключ-значение неупорядоченными. Я наткнулся на OrderedDict()
, но я не понимаю, как реализовать некоторые вещи, как это элементы хранятся в виде кортежа:
Так что мои вопросы:
- Как я могу установить пар ключ-значение и имеют доступ к ним после этого?
- Как я могу увеличить значение определенного ключа?
- Или есть ли другой более простой способ сделать это?
Что вы подразумеваете под «ключами-значениями являются неупорядоченными»? Как вы ожидаете, что их закажут? – bluesummers
Я бы хотел, чтобы они оставались в порядке, я добавляю их в словарь. – lvcasco
Я не понимаю, что вы подразумеваете под этим, я не вижу в вашем коде, к которому вы обращаетесь, у меня есть хороший ответ для вас, просто объясните мне заказ – bluesummers