欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

【Python】文本情感分析及繪制詞云

系統(tǒng) 1609 0

碼字不易,喜歡請(qǐng)點(diǎn)贊!!!

這篇文章主要分享了使用Python來對(duì)文本數(shù)據(jù)進(jìn)行情感分析以及繪制詞云。
主要步驟包括:
1.文本預(yù)處理
2.文本分詞
3.去除停用詞(這里設(shè)置為單個(gè)詞和一些常見的停用詞)
4.詞頻統(tǒng)計(jì)
5.情感分析
6.繪制詞云

首先導(dǎo)入所需的程序辦和文本數(shù)據(jù):

            
              #帶入程序包
import pandas as pd
import re
import jieba
import collections
from wordcloud import WordCloud, ImageColorGenerator, STOPWORDS
import matplotlib.pyplot as plt
from PIL import Image

#讀取數(shù)據(jù)
path = r"data.txt"
with open(path) as f:
    data = f.read()

            
          

1.使用正則表達(dá)式對(duì)文本數(shù)據(jù)進(jìn)行預(yù)處理,這里主要去除數(shù)據(jù)的一些沒用的符號(hào)

            
              # 文本預(yù)處理
pattern = re.compile(u'\t|\n|\.|-|:|;|\)|\(|\?|"')
data = re.sub(pattern, '', data)

            
          

2.使用精準(zhǔn)模式對(duì)文本進(jìn)行分詞

            
              # 文本分詞--精確模式分詞
seg_list_exact  = jieba.cut(data,cut_all = False)

            
          

3.去除停用詞,這里主要去除了一些常見的停用詞和單個(gè)詞

            
              object_list = []
# 自定義常見去除詞庫
remove_words = [u'的', u',',u'和', u'是', u'隨著', u'對(duì)于', u'對(duì)',u'等',u'能',u'都',u'。',u' ',u'、',u'中',u'在',u'了',u'通常',u'如果',u'我們',u'需要'] 
for word in seg_list_exact:
    if word not in remove_words:
        object_list.append(word)

#去除單個(gè)詞
for i in range(len(object_list)-1,-1,-1):
    if(len(object_list[i])<2):
        object_list.pop(i)

            
          

4.詞頻統(tǒng)計(jì),并輸出出現(xiàn)次數(shù)最高的100個(gè)詞

            
               # 對(duì)分詞做詞頻統(tǒng)計(jì)
word_counts = collections.Counter(object_list)
# 獲取前100最高頻的詞
word_counts_top100 = word_counts.most_common(100) 
print(word_counts_top100) 

            
          

5.情感分析,這里展示一下簡單的文本情感分析,一般文本情感分析會(huì)統(tǒng)計(jì)文本中的積極詞和消極詞次數(shù),然后最簡單的方法就是文本中積極詞量化為1,消極詞量化為-1,然后給定權(quán)重來計(jì)算文本的情感,這里展示統(tǒng)計(jì)文本中積極詞和消極詞方法。

            
              #讀取積極、消極詞庫
negPath = r"ntusd-negative.txt"
posPath = r"ntusd-positive.txt"
pos = open(posPath, encoding='utf-8').readlines()
neg = open(negPath, encoding='utf-8').readlines()
#統(tǒng)計(jì)積極、消極詞
for i in range(len(pos)):
    pos[i] = pos[i].replace('\n','').replace('\ufeff','')
for i in range(len(neg)):
    neg[i] = neg[i].replace('\n','').replace('\ufeff','')
posNum = negNum = 0
for i in range(len(object_list)):
    if(object_list[i] in pos):
        posNum = posNum + 1
    elif(object_list[i] in neg):
        negNum = negNum + 1
print('posNum:',posNum)
print('negNum:',negNum)

            
          

6.繪制詞云,展示結(jié)果,這里直接使用的是默認(rèn)圖片,如果想改變圖片的樣式,可以通過給定Image參數(shù)。

            
              #繪制詞云
my_wordcloud = WordCloud(
    background_color='white',  # 設(shè)置背景顏色
    # mask=img,  # 背景圖片
    max_words=200,  # 設(shè)置最大顯示的詞數(shù)
    stopwords=STOPWORDS,  # 設(shè)置停用詞
    # 設(shè)置字體格式,字體格式 .ttf文件需自己網(wǎng)上下載,最好將名字改為英文,中文名路徑加載可能會(huì)出現(xiàn)問題。
    font_path='simhei.ttf',
    max_font_size=100,  # 設(shè)置字體最大值
    random_state=50,  # 設(shè)置隨機(jī)生成狀態(tài),即多少種配色方案
    ##提高清晰度
    width=1000,height=600,
    min_font_size=20,
).generate_from_frequencies(word_counts)

# 顯示生成的詞云圖片
plt.imshow(my_wordcloud)
plt.axis('off')
plt.show()

            
          

【Python】文本情感分析及繪制詞云_第1張圖片
自定義背景圖:
【Python】文本情感分析及繪制詞云_第2張圖片

            
              img = plt.imread(r"C:\Users\vivalavida\Desktop\pp.jpg")
#繪制詞云
my_wordcloud = WordCloud(
    background_color='white',  # 設(shè)置背景顏色
    mask=img,  # 背景圖片
    max_words=200,  # 設(shè)置最大顯示的詞數(shù)
    stopwords=STOPWORDS,  # 設(shè)置停用詞
    # 設(shè)置字體格式,字體格式 .ttf文件需自己網(wǎng)上下載,最好將名字改為英文,中文名路徑加載可能會(huì)出現(xiàn)問題。
    font_path='simhei.ttf',
    max_font_size=100,  # 設(shè)置字體最大值
    random_state=50,  # 設(shè)置隨機(jī)生成狀態(tài),即多少種配色方案
    ##提高清晰度
    width=1000,height=600,
    min_font_size=20,
).generate_from_frequencies(word_counts)

# 顯示生成的詞云圖片

plt.imshow(my_wordcloud, interpolation='bilinear')
plt.axis('off')
plt.show()

            
          

結(jié)果:
【Python】文本情感分析及繪制詞云_第3張圖片
圖片保存到本地:

            
              my_wordcloud.to_file(r"wordcloud1.png")

            
          

保存到本地之后圖片質(zhì)量熱別高:
【Python】文本情感分析及繪制詞云_第4張圖片


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 色婷婷综合久久久中文一区二区 | 亚洲一区国产 | av官网在线| 色综合天天综合网看在线影院 | 欧美日韩精品一区二区三区视频 | 亚欧成人中文字幕一区 | 国产成人毛片 | 精品国产不卡一区二区三区 | av网址在线 | 九九视频网 | 天天操天天干天天爽 | 一本一道dvd在线播放器 | 精品久久久久久久久久 | 国产第一页在线视频 | 国产91福利在线精品剧情尤物 | 亚洲欧美日韩精品高清 | 国产在线精品二区韩国演艺界 | 男女超猛烈啪啦啦的免费视频 | 91伦理片 | 亚洲乱码在线卡一卡二卡新区 | 免费的色网站 | 色综合天天射 | 一级毛片不卡片免费观看 | 一级黄色毛片a | 亚洲高清视频在线观看 | 精品亚洲国产成av人片传媒 | 波多野结衣中文丝袜字幕 | 91免费视频版 | 一级欧美视频 | 成人爱爱电影 | 精品国产青草久久久久福利 | 色综合久久综精品 | 国产精品果冻麻豆精东天美 | 欧美在线观看视频一区 | 91懂色| 亚洲线精品一区二区三区 | 日韩中文欧美 | 欧美高清成人 | 欧美在线观看视频 | 午夜专区 | 精品免费久久久久国产一区 |