使用NLTK存储条件频率分布

0 投票
1 回答
1210 浏览
提问于 2025-04-17 12:22

我正在写一个脚本,用来进行文本预测,使用的是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()

撰写回答