问题描述
def frequency_with_batch(textlines,freq_counter):
docs = nlps(textlines)
log_every_n = 100000
for i,doc in enumerate(docs):
log_every_n += 1
tokens = doc['words']
freq_counter.update(tokens)
我有一个40G的文本文件,我想计算单词的频率。它从文件读取,每批读取1000行。计数器是:
freq_counter = collections.Counter()
我的简介不正确。但是,当它运行时,通过查看日志似乎变得越来越慢。现在已经完成了3000万行的处理。我不明白为什么还有其他因素使它变慢。计算机内存为300G,足够大。
以这种方式使用时,计数器自然会变慢吗?
添加项:
- “令牌”是单词列表,由nlps()函数分割。
- 我省略了日志打印语句。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)