【笔记】结巴分词绘制词云图

信息技术:分词艺术与重要词云探索
本文探讨了结巴分词的精确、全模式和搜索引擎模式,展示了如何通过正则表达式提取数据并结合jieba分词剔除非关键信息。重点在于生成词频分布和可视化重要词云,揭示了信息技术领域的核心词汇。

一、结巴分词的三种模式

(1)精确模式:把最有可能组成词语的词切开,没有冗余单词。

(2)全模式:把所有可能组成词语的词切开,有冗余单词。

(3)搜索引擎模式:在精确模式的基础上,对长词再次切分,适合用于搜索引擎分词。


二、正则提取数据

import numpy as np
import pandas as pd

import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline

# 导数据
douyin = pd.read_csv('data/douyin.csv')

# 正则提取,并达到MySQL中group_concat的效果
temp = douyin['signature'].str.extractall(r'[^一-龥]*([一-龥]+)[^一-龥]*').copy(
笔记本电脑上使用爬虫获取网页数据后,为了生成词云图并进行分词,你可以按照以下步骤操作: 1. **网络爬取**: 使用Python中的Scrapy、BeautifulSoup或requests等库对目标网站进行爬取,获取文本内容。例如: ```python import requests from bs4 import BeautifulSoup url = "https://www.example.com" response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') text = soup.get_text() ``` 2. **数据清洗**: 清理HTML标签和无用字符,只保留有意义的文本内容: ```python text = ' '.join(text.split()) ``` 3. **分词**: 使用jieba库(针对中文)或NLTK(针对英文)进行分词: - 对于中文: ```python import jieba words = jieba.lcut(text) ``` - 对于英文: ```python from nltk.tokenize import word_tokenize words = word_tokenize(text) ``` 4. **词频统计**: 计算每个语出现的频率,可以使用Python的collections模块中的Counter: ```python from collections import Counter word_counts = Counter(words) ``` 5. **生成词云图**: 使用第三方库如`wordcloud`或`pywordcloud`,结合matplotlib或seaborn创建词云图: ```python from wordcloud import WordCloud wordcloud = WordCloud(width=800, height=600).generate_from_frequencies(word_counts) plt.imshow(wordcloud, interpolation='bilinear') plt.axis("off") plt.show() ``` 相关问题-- 1. 如何在Python中安装和使用jieba库进行中文分词? 2. NLTK库在英文分词中的具体用法是什么? 3. 在生成词云图时,如何调整的大小和样式?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Sprite.Nym

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

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

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

打赏作者

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

抵扣说明:

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

余额充值