中文词频统计

我这属于个人笔记,记录的比较杂

安装import nltk比较麻烦,请找单独的教程

可用jieba模块,进行·中文分词

import nltk
from snownlp import SnowNLP
# 需要操作的句子
text = '你站在桥上看风景,看风景的人在楼上看你。明月装饰了你的窗子,你装饰了别人的梦'
s = SnowNLP(text)
# 分词
cut=s.words
# 统计词频
freq = nltk.FreqDist(cut)
# 可以把最常用的5个单词拿出来
standard_freq = freq.most_common(5)
print(standard_freq)

英文去停用词

tokens = ['my', 'dog', 'has', 'flea', 'problems', 'help', 'please',
          'maybe', 'not', 'take', 'him', 'to', 'dog', 'park', 'stupid',
          'my', 'dalmation', 'is', 'so', 'cute', 'I', 'love', 'him']
#tokens=['我','你','洗','的','哈','傻','而']

clean_tokens = tokens[:]
stwords = stopwords.words('english')
for token in tokens:
    if token in stwords:
        clean_tokens.remove(token)

print(clean_tokens)

英文分句,中文我自己测试的,感觉分句不咋滴,逗号一去掉,啥也分不了。

from nltk.tokenize import sent_tokenize
mytext = "你好吗? 打工老苦逼了. 我今年已经23高领了"
print(sent_tokenize(mytext))

from nltk.tokenize import sent_tokenize
mytext = "Hello Adam, how are you? I hope everything is going well. Today is a good day, see you dude."
print(sent_tokenize(mytext))

出现这种报错的,把下面两句代码,单独在.py文件中运行,就可以进行安装了。

import nltk
nltk.download(‘averaged_perceptron_tagger’)
在这里插入图片描述

使用正则只提取汉字,然后再jieba分词。注意jieba用的lcut,不是cut

import re
word="盗墓不是请客吃饭,不是做文章,不是绘画绣花,不能那样雅致,那样从容不迫,文质彬彬,那样温良恭俭让,盗墓是一门技术,一门进行破坏的技术。古代贵族们建造坟墓的时候,一定是想方设法的防止被盗,故此无所不用其极,在墓中设置种种机关暗器,消息埋伏,有巨石、流沙、毒箭、毒虫、陷坑等等数不胜数。到了明代,受到西洋奇技淫巧的影响,一些大墓甚至用到了西洋的八宝转心机关,尤其是清代的帝陵,堪称集数千年防盗技术于一体的杰作,大军阀孙殿英想挖开东陵用里面的财宝充当军饷,起动大批军队,连挖带炸用了五六天才得手,其坚固程度可想而知。盗墓贼的课题就是千方百计的破解这些机关,进入墓中探宝。不过在现代,比起如何挖开古墓更困难的是寻找古墓,地面上有封土堆和石碑之类明显建筑的大墓早就被人发掘得差不多了,如果要找那些年深日深藏于地下,又没有任何地上标记的古墓,那就需要一定的技术和特殊工具了,铁钎、洛阳铲、竹钉,钻地龙,探阴爪,黑折子等工具都应运而生,还有一些高手不依赖工具,有的通过寻找古代文献中的线索寻找古墓,还有极少数的一些人掌握秘术,可以通过解读山川河流的脉象,用看风水的本领找墓穴,我就是属于最后这一类的,在我的盗墓生涯中踏遍了各地,其间经历了很多诡异离奇的事迹,若是一件件的表白出来,足以让观者惊心,闻者乍舌,毕竟那些龙形虎藏、揭天拔地、倒海翻江的举动,都非比寻常。"
cleaned_data = ''.join(re.findall(r'[\u4e00-\u9fa5]', word))#使用正则只提取汉字
print(cleaned_data)
wordlist = jieba.lcut(cleaned_data)#使用jieba进行,分词。
print(wordlist)
text = nltk.Text(wordlist)
print(text)

效果
在这里插入图片描述

词频统计,和相似值计算。最后还是没成功,继续学习吧。

import re
word="盗墓不是请客吃饭,不是做文章,不是绘画荷花,花朵,不能那样雅致,那样从容不迫,花瓣,文质彬彬荷花,那样温良恭俭让,荷叶开花,盗墓是一门技术,莲藕,一门进行破坏的技术。绣花古代贵族们建造坟墓的时候,一定是想方荷花设法的防止被盗,故此无所不用其极,在墓中设置种种机关暗器,消息埋伏,有巨石、流沙、毒箭、毒虫、陷坑等等数不胜数。到了明代,受到西洋奇技淫巧的影响,一些大墓甚至用到了西洋的八宝转心机关,尤其是清代的帝陵,堪称集数千年防盗技术于一体的杰作,大军阀孙殿英想挖开东陵用里面的财宝充当军饷,起动大批军队,连挖带炸用了五六天才得手,其坚固程度可想而知。盗墓贼的课题就是千方百计的破解这些机关,进入墓中探宝。不过在现代,比起如何挖开古墓更困难的是寻找古墓,地面上有封土堆和石碑之类明显建筑的大墓早就被人发掘得差不多了,如果要找那些年深日深藏于地下,又没有任何地上标记的古墓,那就需要一定的技术和特殊工具了,铁钎、洛阳铲、竹钉,钻地龙,探阴爪,黑折子等工具都应运而生,还有一些高手不依赖工具,有的通过寻找古代文献中的线索寻找古墓,还有极少数的一些人掌握秘术,可以通过解读山川河流的脉象,用看风水的本领找墓穴,我就是属于最后这一类的,在我的盗墓生涯中踏遍了各地,其间经历了很多诡异离奇的事迹,若是一件件的表白出来,足以让观者惊心,闻者乍舌,毕竟那些龙形虎藏、揭天拔地、倒海翻江的举动,都非比寻常。"
cleaned_data = ''.join(re.findall(r'[\u4e00-\u9fa5]', word))#使用正则只提取汉字
wordlist = jieba.lcut(cleaned_data)#使用jieba进行,分词。
text = nltk.Text(wordlist)
text.concordance(word='荷花',width=20,lines=10)
a=text.count(word='荷花')#词频统计
print(a)

#text.similar(word='荷花',num=10)

from nltk.text import ContextIndex
contentindex = ContextIndex(wordlist)
similarity_scores = contentindex.word_similarity_dict(word='荷花')
for key,value in similarity_scores.items():
    if value>0.02:#去除掉没有任何关联的此,词性为0
        print(key,value)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风启新尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值