python 中文文本里的词的重复数_Python制作词云案例

06c65f833a5d62b95eedc0808c1848ca.png

今天主要用一个小案例来练习 Python。通过案例可以了解:

1.jieba 库,很多初学者都是在做一些简单分词的时候了解到 jieba 库。这个库功能非常强大,如果后续考虑往 NLP 方向发展,也会和 jieba 库打交道;

2.wordcloud 库,后续做一些简单的文本分析,可以用到;

3.PIL 库的简单用法。

21745d79d1d620a81fe3c25bf4e7090d.gif
# 导入需要用到的库import jiebafrom PIL import Imageimport pandas as pdimport numpy as npfrom wordcloud import WordCloudfrom wordcloud import ImageColorGeneratorimport matplotlib.pyplot as plt%matplotlib inline
# 导入本地txt文件,因为是练习,所以随意找一篇txt文件f = open('/Downloads/穿成七零白富美.txt', 'r',encoding='gb18030').read()# 使用jieba中文分词,jieba分词有多种模式,这里我们选用精确分词,避免词云词语出现重复 了解地址:https://github.com/fxsjy/jieba# 把 generator 转化为字符串cut_text = " ".join(jieba.cut(f, cut_all=False))#查看分好的前200个字符cut_text[:200]
'= = = = = = = = = = = = = = = = = = \n 《 穿 成七零白富 美 》 \n 作者 :似伊 \n \n \n \u3000 \u3000 【 文案 】 :\n \u3000 \u3000 一 觉醒 来 , 叶秋秋 穿越 了 \n \u3000 \u3000 带 着 一个 玉佩 空间 来到 了 吃不饱 , 穿 不 暖 的 七十年代 , 成为 红旗 生产队 大队长 家 的 闺女 \n \u3000 \u3000 生产队 里 有 个 传言 , 那 老 叶家 啊'
# 选好一张本地图片,作为词云蒙版
path_img ='/Downloads/timg.jpeg'#将image转化为矩阵background_image = np.array(Image.open(path_img))# 提取图片中的主要颜色,反馈到词云中的文字上image_colors = ImageColorGenerator(background_image)
wordcloud = WordCloud(font_path='/Library/Fonts/msyh.ttf', # 本地中文字体,不加会乱码                      mask=background_image,  #传入蒙版图像矩阵,使得词云的分布与传入的蒙版图像一致,也就是要传入矩阵格式                      height=400, # 高度设置为400                      width=800, # 宽度设置为800                      scale=20, # 长宽拉伸程度设置为20                      max_words=100, # 控制一张画布中最多绘制的词个数,默认为200                      background_color='white' # 背景色为白色                     ).generate(cut_text)plt.figure(figsize=[12, 10])plt.imshow(wordcloud.recolor(color_func=image_colors), alpha=1)plt.axis('off')plt.show()

71cac941638bf84db20e67911acc61a8.png

温馨小贴示:关注公众号,在对话框回复「词云源码1」获取源码。

93923da8146af5ea7cbcb4bf420b2d48.gif

本周福利

扫码关注,后台回复【0907】,领取数据采集思维导图,轻松掌握数据采集的机制与流程。

2ed9c632a059f030d221a91017a8325f.png

阅读精选

适合 Python 入门的 8 款强大工具!

Python实现“一行拆多行“和“多行并一行“,你会吗?

这24款效率办公神器,简直不要太强大!

刷完 LeetCode 是什么水平?能拿到什么水平的 offer?

python基础之多线程

1a4c2075fd10dac80eaab79c07f17b95.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值