使用NLTK存储条件频率分布
我正在写一个脚本,用来进行文本预测,使用的是NLTK的条件频率分布。
我想把这个分布存储到SQL数据库里,以便以后使用,格式是JSON。这样做可行吗?如果可以的话,怎么把条件频率分布的格式转换成JSON呢?
或者有没有其他更好的方法来存储它呢?
cfd = ConditionalFreqDist()
prev_words = None
cnt=0
for word in words:
if cnt > 1:
prev_words = words[cnt-2]+' '+words[cnt-1]
cfd[prev_words].inc(word)
cnt+=1
1 个回答
1
你可以使用pickle这个工具把ConditionalFreqDist()这个对象存储到一个文件里。
f = open('file.pkl', 'w')
pickle.dump(cfd, f)
f.close()
然后你可以从文件里把这个对象取回来。
#load the object
f = open('file.pkl', 'r')
cfd = pickle.load(f)
f.close()