import json
from itertools import groupby
#Load data
with open('input.txt', 'r') as f:
concepts = []
for concept in f:
concepts.append(concept.strip())
print(len(concepts))
concepts_list = [list(g) for k, g in groupby(concepts, key=lambda x: x[0])]
concepts_dict = {}
for item in concepts_list:
concepts_dict[item[0][0]] = item
with open("concepts_preprocessed_dictionary.txt", "w") as fw:
fw.write(json.dumps(concepts_dict))
但是,我想知道为什么当列表中有大量概念(大约 13,000,000 个概念)时这段代码不起作用。令人惊讶的是,程序在几秒钟内执行,当我检查字典时,它包含错误的结果(换句话说,字典文件的大小只有 1KB,每个分组列表主要包含一两个元素)。
不幸的是,我无法分享我的概念清单,因为它违反了一些隐私问题。
但是我在以下 github 页面中发现了一个很长的单词列表:https : //raw.githubusercontent.com/dwyl/english-words/master/words.txt
但是,与上述数据集不同,我当前的数据集仅按第一个字符按字母顺序排列(即如下)
我的数据集:只有第一个字母是m,但其余单词没有按顺序排列
方法
机器学习
麦克风
我提到的数据集:根据字符很好地排序
机器学习
方法
麦克风
如果需要任何进一步的细节,请告诉我。
牧羊人nacy
相关分类