计数器变大时会变慢吗?

问题描述

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,足够大。

以这种方式使用时,计数器自然会变慢吗?

添加项:

  1. “令牌”是单词列表,由nlps()函数分割。
  2. 我省略了日志打印语句。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)