一 条件词频统计
由于要按条件统计词频,自己准备数据较为麻烦,本次数据集调用NLTK自带的数据集,
from nltk.corpus import brown
cdf = nltk.ConditionalFreqDist((genre,word) for genre in brown.categories()
for word in brown.words(categories=genre))
modals = ['can','could', 'may','might']
cdf.tabulate(samples = modals)
第一步将数据集变为(category,word)的形式,再统计频率,结果如下。
当然可以在统计词频的过程中,使用一些判断条件,来让结果更符合你的需求。
二 绘制分布图和分布表
使用plot()和tabulate()函数即可
cdf.tabulate(samples = modals,conditions=['news','lore'])
cdf.plot(samples = modals,conditions=['news','lore'])
结果如下