回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我只是python的初学者。最近我正在学习使用词典,但我的知识还很有限。我突然想到了这个想法,但我不确定它在python中是否可行。在</p>
<p>我有三份文件,看起来像这样:</p>
<pre><code>DOCNO= 5
nanofluids :0.6841
introduction:0.2525
module :0.0000
to :0.0000
learning :0.0000
DOCID= 1
nanofluids :0.0000
introduction:0.2372
module :0.0000
to :0.0000
learning :0.1185
DOCNO= 12
nanofluids :0.0000
introduction:0.0000
module :0.5647
to :0.0000
learning :0.2084
</code></pre>
<p>我知道如何在字典中存储单个值。例如:</p>
^{pr2}$
<p>但我现在要做的是存储一个具有相应文档编号的数组,它看起来像:</p>
<hr/>
<pre><code>import array
data={ 5:array([0.6841,0.2525,0.0000.0000,0.0000]), 1:array([0.0000,0.2372,0.0000,0.0000,0.1185]), 12:array([0.0000,0.0000,0.5647,0.0000,0.2084])}
</code></pre>
<p><strong>*我的python v2.6.5似乎不允许我这样做。*</strong></p>
<hr/>
<p>如果假设上面的操作是可行的,我想执行点积或矩阵积来找出文档对之间的相似性。我的想法是将数组排列成3x5矩阵,然后乘以它的转置,即5x3。这将返回一个3x3矩阵,它告诉我两个文档之间的关系。例如:</p>
<pre><code>[ 5:[0.6841,0.2525,0.0000,0.0000,0.0000],
1:[0.0000, 0.2372,0.0000,0.0000,0.1185],
12:[0.0000,0.0000,0.5647,0.0000,0.2084] ]
</code></pre>
<p>再乘以它的转置(我不知道怎么做),结果是3x3矩阵,对应于“DOCNO”和“DOCNO”。在</p>
<p>底线是我需要能够找回文件号。例如(5,1)显示了文档5和1之间的关系。Or(1,12)表示文件1和12之间的关系。我不确定这在python中是否可行,但是其他类似的解决方案也会得到赞赏。谢谢你的时间。在</p>