Python,更快的计算速度

2024-09-27 09:32:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试读取数据集并应用一些信息检索代码。 这段代码应该读取字符串列表,计算并显示10个最常用的单词及其频率。代码似乎在工作,但由于数据集非常大,计算结果需要花费很长时间(特别是对于第15行)。有什么建议可以让它运行得更快吗?谢谢

Summaries_file = 'data/aspirin__Summaries.pkl.bz2'
Summaries = pickle.load( bz2.BZ2File( Summaries_file, 'rb' ) )
paper = namedtuple( 'paper', ['title', 'authors', 'year', 'doi'] )
for (id, paper_info) in Summaries.items():
    Summaries[id] = paper( *paper_info )
from collections import OrderedDict
the_list = []
a=[]
v=''
for p in Summaries: 
    my_list = (Summaries[p].title)
    the_list.append(my_list)
a = " ".join(the_list).split()
wordfreq = []
for w in a:
    wordfreq.append(a.count(w))

final = (sorted([i for i in zip(a, wordfreq)],reverse=True,key=lambda x:x[1]))

s = []
for i in final:
   if i not in s:
      s.append(i)
print(s[0:10])

Tags: the代码ininfoidfortitlemy

热门问题