替换大列表中的所有单词

时间:2013-09-18 11:05:30

标签: python

我有一份文件清单,如:

documents = [ 'this is document number 1',
              'this is document number 2',
              'this is document number 3',
                                    ...]]

和一个大约200k字的向量:wordVector = ['word1', 'word2'.....'rare_word']

其中稀有单词是向量中的最后一个单词。此外,对应于wordVector中的每个单词,我有一个1x2向量(所以对于完整的wordVec是一个Nx2数组),它们是这些单词的表示。

现在,我想使用wordVectorNx2数组用相应的表示替换“document”中的所有单词,如果找不到该单词,或者文档为空,则为分配了NX2数组的最后一个值。现在我正在使用循环并在wordVec中找到单词然后替换它们。由于数据集很大,因此该过程需要花费大量时间。有没有快速/ pythonic方式来实现这一目标?

1 个答案:

答案 0 :(得分:3)

将其设为字典并尝试以下内容:

replacedWord = wordDict.get(currentWord, 'rare_word')

这应该从字典中获取匹配的替换条目,如果没有这样的条目,将使用'rare_word'。