我正在研究一个提取文本摘要问题。最后,我想生成一个似乎最重要的单词列表(而不是句子)。我所拥有的一个想法是对文档中早期出现的词语进行了更深入的研究。
我有两个数据帧。第一个是一组带有出现次数的单词:
words.head()
words occurrences
0 '' 2
1 11-1 1
2 2nd 1
3 april 1
4 b.
第二个是一组句子。 0是文档中的第一句,1是secont ..等等。
sentences.head()
sentences
0 Site Menu expandHave a correction?...
1 This will be a chance for ...
2 The event will include...
3 Further, this...
4 Contact:Share:
<小时/> 我设法完成了我的目标:
weights = []
for value in words.index.values:
weights.append(((len(sentences) - sentences.index.values) *
sentences['sentences'].str.contains(words['words'][value])).sum())
weights
[0,
5,
5,
0,
12,...]
words['occurrences'] *= weights
words.head()
words occurrences
0 '' 0
1 11-1 5
2 2nd 5
3 april 0
4 b. 12
然而,这似乎有些草率。我知道我可以使用列表理解(我认为没有它就更容易在这里阅读) - 但是,除此之外,是否有人对这个问题有一个更优雅的解决方案?