溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么用Python進行數(shù)據(jù)分析

發(fā)布時間:2021-11-02 15:02:47 來源:億速云 閱讀:186 作者:iii 欄目:編程語言

這篇文章主要講解了“怎么用Python進行數(shù)據(jù)分析”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么用Python進行數(shù)據(jù)分析”吧!

評論情感傾向

先調(diào)用百度AI來分析微博和b站的評論情感傾向。

知乎的回答字數(shù)過多,做情感分析肯定不準確,就沒做分析。

from aip import AipNlp
""" 你的 APPID AK SK """
APP_ID = '你的APP_ID'
API_KEY = '你的API_KEY'
SECRET_KEY = '你的SECRET_KEY '
client = AipNlp(APP_ID, API_KEY, SECRET_KEY)
text = "XXXXXXXX"
""" 調(diào)用詞法分析 """
response = client.sentimentClassify(text)
# "sentiment":2,    //表示情感極性分類結(jié)果  0:負向,1:中性,2:正向
# "confidence":0.40, //表示分類的置信度
# "positive_prob":0.73, //表示屬于積極類別的概率
# "negative_prob":0.27  //表示屬于消極類別的概率
for info in response['items']:
    if info ['sentiment'] == 2:
        print("正向")
    if info ['sentiment'] == 0:
        print("負向")
    if info['sentiment'] == 1:
        print("中性")
    print("可信度:",info['confidence'])
    print("屬于積極類別的概率是:",info['positive_prob'])
    print("屬于消極類別的概率是:",info['negative_prob'])

需要注意的是,在各個平臺評論最多的“奔涌吧,后浪!”,在百度AI中是個消極句子,需要特殊處理。

結(jié)果如下:

怎么用Python進行數(shù)據(jù)分析

怎么用Python進行數(shù)據(jù)分析

非常明顯,b站的彈幕正向居多,而微博的評論負向居多。

詞云

通過上文的情感分析,各家平臺的用戶對于《后浪》的態(tài)度各異,他們又是如何評價的呢?

統(tǒng)計評論和回答中的高頻詞,制作詞云看一下吧。

from scipy.misc import imread
from wordcloud import WordCloud, ImageColorGenerator

isCN = 1 # 0:英文分詞  1:中文分詞
back_coloring_path = '浪花.jpg'          # 設(shè)置背景圖片路徑
text_path = 'reviews.txt'               # 設(shè)置要分析的文本路徑
stopwords_path = 'stop_word.txt'        # 停用詞詞表
imgname1 = '詞云圖.png'  # 保存的圖片名字1(只按照背景圖片形狀) 
back_coloring = imread(back_coloring_path)     # 設(shè)置背景圖片 

wc = WordCloud(#font_path = font_path          # 設(shè)置字體
                font_path='C:\Windows\Fonts\simfang.ttf',
                #font_path='hanyiqihei.ttf',
                background_color = 'white',    # 設(shè)置背景顏色
                max_words = 3000,              # 設(shè)置顯示的最大詞數(shù)
                mask = back_coloring,          # 設(shè)置背景圖片
                max_font_size = 200,           # 設(shè)置字體最大值
                min_font_size = 20,             # 設(shè)置字體最小值
                random_state = 42,             # 隨機有N種配色方案
                width = 2000 , height = 1720 ,margin = 4 )
words = {}
for i in word_counts:
    words['{}'.format(i[0])] = i[1]
    
wc.generate_from_frequencies(words) 
# txt_freq例子為 { word1: fre1, word2: fre2,  word3: fre3,......,  wordn: fren }

plt.figure() 

怎么用Python進行數(shù)據(jù)分析

b站

怎么用Python進行數(shù)據(jù)分析

知乎

怎么用Python進行數(shù)據(jù)分析

感謝各位的閱讀,以上就是“怎么用Python進行數(shù)據(jù)分析”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對怎么用Python進行數(shù)據(jù)分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI