python词频统计完整步骤_Python中文文本分词、词频统计、词云绘制

本文详细介绍了如何使用Python进行中文文本分词、词频统计以及绘制词云。涉及的包有jieba、wordcloud、re和collections。首先,通过正则表达式选取中文文本,然后利用jieba进行分词并去除停用词。接着,使用collections计算词频并展示前30高频词。最后,通过wordcloud绘制词云图,以直观展示文本中的关键词分布。
摘要由CSDN通过智能技术生成

本文主要从中文文本分词、词频统计、词云绘制方面介绍Python中文文本分词的使用。会使用到的中文文本处理包包括:wordcloud,jieba,re(正则表达式),collections。

1 准备工作

导入相关的包,读取相关数据。

#导入包

import pandas as pd #数据处理包

import numpy as np #数据处理包

from wordcloud import WordCloud #绘制词云

import jieba #中文分词包

import jieba.posseg as pseg

import re #正则表达式,可用于匹配中文文本

import collections #计算词频

#读取数据,使用pandas读取csv

df_question = pd.read_csv("D:/data/raw_data_20200401_copy/question.csv",low_memory=False)

#选择问题描述部分

df_description = df_question["description"].drop_duplicates().reset_index() #去除重复问题

list_description = df_description["description"].tolist()

description_all = "start"

for i in range(999): #选定一定范围作为示范,全部处理实在太多了

description_all = description_all+list_description[i]

#选取中文:使用正则表达式

fi

本篇文章介绍使用Python进行英文文献词频统计词云绘制的方法。 1. 数据收集 首先需要收集要分析的英文文献数据。可以从网上搜索并下载文献的text或者pdf格式文件。 2. 数据处理 使用Python读入文献文件,并根据需要进行数据清洗和预处理,例如去除标点符号、停用词和数字等。可以使用nltk库进行自然语言处理。 import string from nltk.corpus import stopwords from nltk.tokenize import word_tokenize from collections import Counter #读入文献文件 with open(r"path/to/file.txt","r", encoding="utf-8") as f: text = f.read() #去除标点符号和数字 text = text.translate(str.maketrans("", "", string.punctuation+string.digits)) #分词并去除停用词 tokens = word_tokenize(text.lower()) stop_words = set(stopwords.words("english")) filtered_words = [word for word in tokens if word not in stop_words] 3. 数据分析 使用Python统计词频,并将结果保存为字典或DataFrame,方便后续绘制词云或更进一步的分析。 #计算词频 word_count = Counter(filtered_words) #将结果保存为pandas DataFrame import pandas as pd df = pd.DataFrame.from_dict(word_count, orient='index', columns=['count']) 4. 词云绘制 使用Python绘制词云,可以使用wordcloud库。在绘制词云的时候可以对每个单词附上对应的词频。 #导入wordcloud库 from wordcloud import WordCloud import matplotlib.pyplot as plt #将结果转换为字典格式 word_dict = {} for key in word_count: word_dict[key] = word_count[key] #绘制词云 wc = WordCloud(background_color="white", max_words=1000) wc.generate_from_frequencies(word_dict) plt.figure(figsize=(12,6)) plt.imshow(wc, interpolation='bilinear') plt.axis("off") plt.show() 完成以上代码后,就可以得到类似如下的词云图: 如图所示,大的词表示在文献出现的频率更高的单词。通过词云来直观地展现文献的主题和关键词,有助于提高阅读效率和理解文章主旨。 本篇文章介绍了如何使用Python进行英文文献词频统计词云绘制。通过这些技术,不仅可以快速获取文献的关键词,也可以更深入地理解文献的内容和结构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值