【发布时间】:2023-04-01 23:13:02
【问题描述】:
我有两个不同的列表,我需要根据它们的名称从它们中提取数据,然后将它们相乘。
我有这个列表:
query_tfidf = [0.8465735902799727, 0.8465735902799727]
documents_query = [['Aftonbladet', 'play', 0.0], ['Aftonbladet', 'free', 0.0],
['Radiosporten Play', 'play', 0.10769448286014331], ['Radiosporten Play', 'free', 0.0]]
我需要根据他们的名字对它们进行排序,例如:
{Aftonbladet: {play: 0.0, free: 0.0}, Radiosporten Play: {play: 0.10769448286014331, free: 0.0}
然后我需要从每个中提取数据并乘以 query_tfidf 并计算两个变量。例如:
for each name:
dot_product = (play_value * query_tfidf[0]) + (free_value * query_tfidf[1])
query = sqrt((query_tfidf[0])^2 + (query_tfidf[1])^2)
document = sqrt((play_value)^2 + (free_value)^2)
我有点绝望,所以我想在这里问一下。我正在使用 python 2.7。
【问题讨论】:
-
documents_query总是会像那样有序地进来吗?[key1, 'play', val], [key1, 'free', val], [key2, 'play, val], ...? -
是的,还是一样的顺序,但是那些“play”或者“free”是关键词,所以可以改名字。