python自然语言处理 -读书笔记1

# -*- coding:utf-8 -*-
# __author__ = 'lipzhang'
import nltk
from nltk.book import *
# print(text1.concordance("monstrous"))#显示一个指 定单词的每一次出现,连同一些上下文一起显示
# print(text2.similar("monstrous"))#查看在text2中与该单词("monstrous")相似的词。
#print(text2.common_contexts(["monstrous", "very"]))#们研究两个或两个以上的词共同的上下文
#text4.dispersion_plot(["citizens", "democracy", "freedom", "duties", "America"])#判断词在文本中的位置:从文本开头算起在它前面有多少词。这个位置信息 可以用离散图表示。每一个竖线代表一个单词,每一行代表整个文本。
# print(len(text3) / len(set(text3)))#展示每个字平均被使用了多少次
# print(len((set(text3))))#展示这本书中一共使用了多少个不同的词汇,包括标点符号
# print(text3.count("smote"))#展示这本书中smote出现的次数
# print(100 * text4.count('a') / len(text4))#,计算一个特定的词在文本中占据的百分比


def lexical_diversity(text):#展示每个字平均被使用了多少次
    return len(text) / len(set(text))
def percentage(count, total):#计算百分比
    return 100 * count / total
#sent1...9是已经预定义好的词汇链表
fdist1=FreqDist(text1)#计算出来 的《白鲸记》中的总的词数
vocabulary1 = list(fdist1.keys())#表达式keys()为我们提供了文本中所有不同类型的链表
#fdist1.plot(50, cumulative=True)#《白鲸记》中 50 个最常用词的累积频率图
#print(vocabulary1[:50])
#print(fdist1.hapaxes())#只出现了一次的词
V = set(text5)
long_words = [w for w in V if len(w) > 15]
print(sorted(long_words))#找出文本词汇表长度中超过 15个字符的词

fdist5 = FreqDist(text5)
print(fdist5.items())
print(sorted([w for w in set(text5) if len(w) > 7 and fdist5[w] > 7]))#找出文本词汇表长度中超过7个字符并且出现次数大于7次的词

# print(text4.collocations())#找到比我们基于单个词的频率预期得到的更频繁出现的双连词

# fdist =FreqDist([len(w) for w in text1])#可以查看文本中词长的分布,
# print(fdist.items())
# print(fdist.max())
# print(fdist.freq(3))


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值