欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用python實(shí)現(xiàn)簡(jiǎn)單的情感分析實(shí)例教程

 更新時(shí)間:2022年06月11日 10:41:00   作者:IT之一小佬  
商品評(píng)論挖掘、電影推薦、股市預(yù)測(cè)……情感分析大有用武之地,下面這篇文章主要給大家介紹了關(guān)于利用python實(shí)現(xiàn)簡(jiǎn)單的情感分析的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

python實(shí)現(xiàn)簡(jiǎn)單的情感分析

1 數(shù)據(jù)導(dǎo)入及預(yù)處理

1.1 數(shù)據(jù)導(dǎo)入

#  數(shù)據(jù)導(dǎo)入
import pandas as pd
data = pd.read_csv('../data/京東評(píng)論數(shù)據(jù).csv')
data.head()

1.2 數(shù)據(jù)描述

#  數(shù)據(jù)描述
data.describe()

1.3 數(shù)據(jù)預(yù)處理

#  數(shù)據(jù)預(yù)處理
#  取出sku_Id,content字段
data1 = data[['sku_id', 'content']]
data1.head(10)

2 情感分析

2.1 情感分

#  情感分析
from snownlp import SnowNLP
data1['emotion'] = data1['content'].apply(lambda x: SnowNLP(x).sentiments)
data1.head()

#  情感數(shù)據(jù)描述
data1.describe()

emotion平均值為0.74,中位數(shù)為0.96,25%分位數(shù)為0.56,可見不到25%的數(shù)據(jù)造成了整體均值的較大下移。

2.2 情感分直方圖

#  繪制情感分直方圖
import matplotlib.pyplot as plt
import numpy as np
 
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
 
bins = np.arange(0, 1.1, 0.1)
plt.hist(data1['emotion'], bins, color = '#4F94CD', alpha=0.9)
plt.xlim(0, 1)
plt.xlabel('情感分')
plt.ylabel('數(shù)量')
plt.title('情感分直方圖')
plt.show()

由直方圖可見,評(píng)論內(nèi)容兩級(jí)分化較為嚴(yán)重;

3637條評(píng)論中有約2200條評(píng)論情感分在[0.9,1]區(qū)間內(nèi);同時(shí),有約500條評(píng)論情感分在[0,0.1]區(qū)間內(nèi)。

2.3 詞云圖

#  繪制詞云圖(這兒沒(méi)有做停用詞處理)
from wordcloud import WordCloud
import jieba
 
myfont = myfont = r'C:\Windows\Fonts\simhei.ttf'
w = WordCloud(font_path=myfont)
text = ''
for i in data['content']:
    text += i
data_cut = ' '.join(jieba.lcut(text))
w.generate(data_cut)
image = w.to_file('詞云圖.png')
image

2.4 關(guān)鍵詞提取

#  關(guān)鍵詞提取top10
#  這兒直接寫import jieba運(yùn)行會(huì)顯示沒(méi)有analyse屬性
from jieba import analyse
 
key_words = jieba.analyse.extract_tags(sentence=text, topK=10, withWeight=True, allowPOS=())
key_words

以上關(guān)鍵詞顯示,消費(fèi)者比較在意手機(jī)的“屏幕”“拍照”“手感”等特性,“華為”“小米”是出現(xiàn)頻次最高的兩個(gè)手機(jī)品牌。

參數(shù)說(shuō)明 :

  • sentence 需要提取的字符串,必須是str類型,不能是list
  • topK 提取前多少個(gè)關(guān)鍵字
  • withWeight 是否返回每個(gè)關(guān)鍵詞的權(quán)重
  • allowPOS是允許的提取的詞性,默認(rèn)為allowPOS=‘ns’, ‘n’, ‘vn’, ‘v’,提取地名、名詞、動(dòng)名詞、動(dòng)詞

3 積極評(píng)論與消極評(píng)論

3.1 積極評(píng)論與消極評(píng)論占比

#  計(jì)算積極評(píng)論與消極評(píng)論各自的數(shù)目
pos, neg = 0, 0
for i in data1['emotion']:
    if i >= 0.5:
        pos += 1
    else:
        neg += 1
print('積極評(píng)論數(shù)目為:', pos, '\n消極評(píng)論數(shù)目為:', neg)

#  積極消極評(píng)論占比
import matplotlib.pyplot as plt
 
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
 
pie_labels = 'positive', 'negative'
plt.pie([pos, neg], labels=pie_labels, autopct='%1.2f%%', shadow=True)
 
plt.show()

3.2 消極評(píng)論分析

#  獲取消極評(píng)論的數(shù)據(jù)
data2 = data1[data1['emotion'] < 0.5]
data2.head()

#消極評(píng)論詞云圖(這兒沒(méi)有做停用詞處理)
text2 = ''
for s in data2['content']:
    text2 += s
data_cut2 = ' '.join(jieba.lcut(text2))
w.generate(data_cut2)
image = w.to_file('消極評(píng)論詞云.png')
image

#消極評(píng)論關(guān)鍵詞top10
key_words = jieba.analyse.extract_tags(sentence=text2, topK=10, withWeight=True, allowPOS=())
key_words

消極評(píng)論關(guān)鍵詞顯示,“屏幕”“快遞”“充電”是造成用戶體驗(yàn)不佳的幾個(gè)重要因素;屏幕和充電問(wèn)題有可能是手機(jī)不良品率過(guò)高或快遞壓迫;

因此平臺(tái)應(yīng)注重提高手機(jī)品控,降低不良品率;另外應(yīng)設(shè)法提升發(fā)貨,配送,派件的效率和質(zhì)量。

總結(jié)

到此這篇關(guān)于利用python實(shí)現(xiàn)簡(jiǎn)單的情感分析的文章就介紹到這了,更多相關(guān)python情感分析內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SymPy庫(kù)關(guān)于矩陣的基本操作和運(yùn)算

    SymPy庫(kù)關(guān)于矩陣的基本操作和運(yùn)算

    本文主要介紹了SymPy庫(kù)關(guān)于矩陣的基本操作和運(yùn)算,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 詳解Python 序列化Serialize 和 反序列化Deserialize

    詳解Python 序列化Serialize 和 反序列化Deserialize

    這篇文章主要介紹了詳解Python 序列化Serialize 和 反序列化Deserialize的相關(guān)資料,序列化是將對(duì)象狀態(tài)轉(zhuǎn)換為可保持或傳輸?shù)母袷降倪^(guò)程。與序列化相對(duì)的是反序列化,它將流轉(zhuǎn)換為對(duì)象。這兩個(gè)過(guò)程結(jié)合起來(lái),可以輕松地存儲(chǔ)和傳輸數(shù)據(jù),需要的朋友可以參考下
    2017-08-08
  • ML神器:sklearn的快速使用及入門

    ML神器:sklearn的快速使用及入門

    這篇文章主要介紹了ML神器:sklearn的快速使用及入門,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • python flask框架實(shí)現(xiàn)傳數(shù)據(jù)到j(luò)s的方法分析

    python flask框架實(shí)現(xiàn)傳數(shù)據(jù)到j(luò)s的方法分析

    這篇文章主要介紹了python flask框架實(shí)現(xiàn)傳數(shù)據(jù)到j(luò)s的方法,結(jié)合實(shí)例形式分析了前端數(shù)據(jù)序列化及后臺(tái)Flask交互數(shù)據(jù)返回相關(guān)操作技巧,需要的朋友可以參考下
    2019-06-06
  • python破解zip加密文件的方法

    python破解zip加密文件的方法

    這篇文章主要介紹了python破解zip加密文件的方法,本文圖文并茂給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2018-05-05
  • 初步剖析C語(yǔ)言編程中的結(jié)構(gòu)體

    初步剖析C語(yǔ)言編程中的結(jié)構(gòu)體

    這篇文章主要介紹了C語(yǔ)言編程中的結(jié)構(gòu)體,是C語(yǔ)言入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2016-01-01
  • 使用ChatGPT來(lái)自動(dòng)化Python任務(wù)

    使用ChatGPT來(lái)自動(dòng)化Python任務(wù)

    這篇文章主要介紹了使用ChatGPT來(lái)自動(dòng)化Python任務(wù)的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • 如何解決.cuda()加載用時(shí)很長(zhǎng)的問(wèn)題

    如何解決.cuda()加載用時(shí)很長(zhǎng)的問(wèn)題

    這篇文章主要介紹了如何解決.cuda()加載用時(shí)很長(zhǎng)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python reverse反轉(zhuǎn)部分?jǐn)?shù)組的實(shí)例

    python reverse反轉(zhuǎn)部分?jǐn)?shù)組的實(shí)例

    今天小編就為大家分享一篇python reverse反轉(zhuǎn)部分?jǐn)?shù)組的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • python之openpyxl模塊的安裝和基本用法(excel管理)

    python之openpyxl模塊的安裝和基本用法(excel管理)

    這篇文章主要給大家介紹了關(guān)于python之openpyxl模塊的安裝和基本用法的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02

最新評(píng)論