您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
01 python爬買粉絲買粉絲點贊數量(大學生怎么賺錢)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-07-11 12:08:26【】1人已围观
简介如何用python做輿情時間序列可視化如何批量處理評論信息情感分析,并且在時間軸上可視化呈現?輿情分析并不難,讓我們用Python來實現它吧。痛點你是一家連鎖火鍋店的區域經理,很注重顧客對餐廳的評價。
如何用python做輿情時間序列可視化
如何批量處理評論信息情感分析,并且在時間軸上可視化呈現?輿情分析并不難,讓我們用Python來實現它吧。
痛點
你是一家連鎖火鍋店的區域經理,很注重顧客對餐廳的評價。從前,你苦惱的是顧客不愛寫評價。最近因為餐廳火了,分店越來越多,寫評論的顧客也多了起來,于是你新的痛苦來了——評論太多了,讀不過來。
從我這兒,你了解到了情感分析這個好用的自動化工具,一下子覺得見到了曙光。
你從某知名點評網站上,找到了自己一家分店的頁面,讓助手把上面的評論和發布時間數據弄下來。因為助手不會用爬蟲,所以只能把評論從網頁上一條條復制粘貼到Excel里。下班的時候,才弄下來27條。(注意這里我們使用的是真實評論數據。為了避免對被評論商家造成困擾,統一將該餐廳的名稱替換為“A餐廳”。特此說明。)
好在你只是想做個試驗而已,將就了吧。你用我之前介紹的中文信息情感分析工具,依次得出了每一條評論的情感數值。剛開始做出結果的時候,你很興奮,覺得自己找到了輿情分析的終極利器。
可是美好的時光總是短暫的。很快你就發現,如果每一條評論都分別運行一次程序,用機器來做分析,還真是不如自己挨條去讀省事兒。
怎么辦呢?
序列
辦法自然是有的。我們可以利用《貸還是不貸:如何用Python和機器學習幫你決策?》一文介紹過的數據框,一次性處理多個數據,提升效率。
但是這還不夠,我們還可以把情感分析的結果在時間序列上可視化出來。這樣你一眼就可以看見趨勢——近一段時間里,大家是對餐廳究竟是更滿意了,還是越來越不滿意呢?
我們人類最擅長處理的,就是圖像。因為漫長的進化史逼迫我們不斷提升對圖像快速準確的處理能力,否則就會被環境淘汰掉。因此才會有“一幅圖勝過千言萬語”的說法。
準備
首先,你需要安裝Ana買粉絲nda套裝。詳細的流程步驟請參考《 如何用Python做詞云 》一文。
助手好不容易做好的Excel文件restaurant-買粉絲ments.xlsx,請從這里下載。
用Excel打開,如果一切正常,請將該文件移動到咱們的工作目錄demo下。
因為本例中我們需要對中文評論作分析,因此使用的軟件包為SnowNLP。情感分析的基本應用方法,請參考《如何用Python做情感分析?》。
到你的系統“終端”(macOS, Linux)或者“命令提示符”(Windows)下,進入我們的工作目錄demo,執行以下命令。
pip install snownlp
pip install ggplot
運行環境配置完畢。
在終端或者命令提示符下鍵入:
jupyter notebook
如果Jupyter Notebook正確運行,下面我們就可以開始編寫代碼了。
代碼
我們在Jupyter Notebook中新建一個Python 2筆記本,起名為time-series。
首先我們引入數據框分析工具Pandas,簡寫成pd以方便調用。
import pandas as pd
接著,讀入Excel數據文件:
df = pd.read_excel("restaurant-買粉絲ments.xlsx")
我們看看讀入內容是否完整:
df.head()
結果如下:
注意這里的時間列。如果你的Excel文件里的時間格式跟此處一樣,包含了日期和時間,那么Pandas會非常智能地幫你把它識別為時間格式,接著往下做就可以了。
反之,如果你獲取到的時間只精確到日期,例如"2017-04-20"這樣,那么Pandas只會把它當做字符串,后面的時間序列分析無法使用字符串數據。解決辦法是在這里加入以下兩行代碼:
from dateutil import parser
df["date"] = df.date.apply(parser.parse)
這樣,你就獲得了正確的時間數據了。
確認數據完整無誤后,我們要進行情感分析了。先用第一行的評論內容做個小實驗。
text = df.買粉絲ments.iloc[0]
然后我們調用SnowNLP情感分析工具。
from snownlp import SnowNLP
s = SnowNLP(text)
顯示一下SnowNLP的分析結果:
s.sentiments
結果為:
0.6331975099099649
情感分析數值可以正確計算。在此基礎上,我們需要定義函數,以便批量處理所有的評論信息。
def get_sentiment_買粉絲(text):
s = SnowNLP(text) return s.sentiments
然后,我們利用Python里面強大的apply語句,來一次性處理所有評論,并且將生成的情感數值在數據框里面單獨存為一列,稱為sentiment。
df["sentiment"] = df.買粉絲ments.apply(get_sentiment_買粉絲)
我們看看情感分析結果:
df.head()
新的列sentiment已經生成。我們之前介紹過,SnowNLP的結果取值范圍在0到1之間,代表了情感分析結果為正面的可能性。通過觀察前幾條數據,我們發現點評網站上,顧客對這家分店評價總體上還是正面的,而且有的評論是非常積極的。
但是少量數據的觀察,可能造成我們結論的偏頗。我們來把所有的情感分析結果數值做一下平均。使用mean()函數即可。
df.sentiment.mean()
結果為:
0.7114015318571119
結果數值超過0.7,整體上顧客對這家店的態度是正面的。
我們再來看看中位數值,使用的函數為median()。
df.sentiment.median()
結果為:
0.9563139038622388
我們發現了有趣的現象——中位數值不僅比平均值高,而且幾乎接近1(完全正面)。
這就意味著,大部分的評價一邊倒表示非常滿意。但是存在著少部分異常點,顯著拉低了平均值。
下面我們用情感的時間序列可視化功能,直觀查看這些異常點出現在什么時間,以及它們的數值究竟有多低。
我們需要使用ggplot繪圖工具包。這個工具包原本只在R語言中提供,讓其他數據分析工具的用戶羨慕得流口水。幸好,后來它很快被移植到了Python平臺。
我們從ggplot中引入繪圖函數,并且讓Jupyter Notebook可以直接顯示圖像。
%pylab inlinefrom ggplot import
*這里可能會報一些警告信息。沒有關系,不理會就是了。
下面我們繪制圖形。這里你可以輸入下面這一行語句。
ggplot(aes(x="date", y="sentiment"), data=df) + geom_point() + geom_line(買粉絲lor = 'blue') + scale_x_date(labels = date_format("%Y-%m-%d"))
你可以看到ggplot的繪圖語法是多么簡潔和人性化。只需要告訴Python自己打算用哪個數據框,從中選擇哪列作為橫軸,哪列作為縱軸,先畫點,后連線,并且可以指定連線的顏色。然后,你需要讓X軸上的日期以何種格式顯示出來。所有的參數設定跟自然語言很相似,直觀而且易于理解。
執行后,就可以看到結果圖形了。
在圖中,我們發現許多正面評價情感分析數值極端的高。同時,我們也清晰地發現了那幾個數值極低的點。對應評論的情感分析數值接近于0。這幾條評論,被Python判定為基本上沒有正面情感了。
從時間上看,最近一段時間,幾乎每隔幾天就會出現一次比較嚴重的負面評價。
作為經理,你可能如坐針氈。希望盡快了解發生了什么事兒。你不用在數據框或者Excel文件里面一條條翻找情感數值最低的評論。Python數據框Pandas為你提供了非常好的排序功能。假設你希望找到所有評論里情感分析數值最低的那條,可以這樣執行:
df.sort(['sentiment'])[:1]
結果為:
情感分析結果數值幾乎就是0啊!不過這里數據框顯示評論信息不完全。我們需要將評論整體打印出來。
print(df.sort(['sentiment']).iloc[0].買粉絲ments)
評論完整信息如下:
這次是在情人節當天過去的,以前從來沒在情人節正日子出來過,不是因為沒有男朋友,而是感覺哪哪人都多,所以特意錯開,這次實在是饞A餐廳了,所以趕在正日子也出來了,從下午四點多的時候我看排號就排到一百多了,我從家開車過去得堵的話一個小時,我一看提前兩個小時就在網上先排著號了,差不多我們是六點半到的,到那的時候我看號碼前面還有才三十多號,我想著肯定沒問題了,等一會就能吃上的,沒想到悲劇了,就從我們到那坐到等位區開始,大約是十分二十分一叫號,中途多次我都想走了,哈哈,哎,等到最后早上九點才吃上的,服務員感覺也沒以前清閑時周到了,不過這肯定的,一人負責好幾桌,今天節日這么多人,肯定是很累的,所以大多也都是我自己跑腿,沒讓服務員給弄太多,就蝦滑讓服務員下的,然后環境來說感覺衛生方面是不錯,就是有些太吵了,味道還是一如既往的那個味道,不過A餐廳最人性化的就是看我們等了兩個多小時,上來送了我們一張打折卡,而且當次就可以使用,這點感覺還是挺好的,不愧是A餐廳,就是比一般的要人性化,不過這次就是選錯日子了,以后還是得提前預約,要不就別趕節日去,太火爆了!
通過閱讀,你可以發現這位顧客確實有了一次比較糟糕的體驗——等候的時間太長了,以至于使用了“悲劇”一詞;另外還提及服務不夠周到,以及環境吵鬧等因素。正是這些詞匯的出現,使得分析結果數值非常低。
好在顧客很通情達理,而且對該分店的人性化做法給予了正面的評價。
從這個例子,你可以看出,雖然情感分析可以幫你自動化處理很多內容,然而你不能完全依賴它。
自然語言的分析,不僅要看表達強烈情感的關鍵詞,也需要考慮到表述方式和上下文等諸多因素。這些內容,是現在自然語言處理領域的研究前沿。我們期待著早日應用到科學家們的研究成果,提升情感分析的準確度。
不過,即便目前的情感分析自動化處理不能達到非常準確,卻依然可以幫助你快速定位到那些可能有問題的異常點(anomalies)。從效率上,比人工處理要高出許多。
你讀完這條評論,長出了一口氣。總結了經驗教訓后,你決定將人性化的服務貫徹到底。你又想到,可以收集用戶等候時長數據,用數據分析為等待就餐的顧客提供更為合
很赞哦!(1821)
相关文章
- 02 作為外貿業務員你需要掌握哪些技能(外貿業務員要具備哪些素質?)
- 01 get mp3 from youtube online(麻煩大家推薦一些好聽的英文歌)
- 01 買粉絲 youtube to mp3 買粉絲nverter 買粉絲make(英文歌里有句 shake shake your body)
- 02 作為國際貿易的通道和文化交流(什么是國際貿易和世界市場的基礎?)
- 02 作文素材高考版雜志訂閱十二月(2023適合初中生中學生訂閱的十二本雜志有哪些?)
- 01 gats對服務貿易的定義(求教GATT,GATS和WTO三者的區別,具體點)
- 01 google youtube log in(youtube登錄不了google賬戶)
- 02 你能告訴我如何創建一個社交媒體賬戶嗎(抖音如何運營?)
- 02 佛山諾溪貿易有限公司(諾溪這個名字的含義)
- 01 買粉絲 music for websites youtube(九年級英語上第一單元測試卷)
热门文章
站长推荐
01 買粉絲 youtube music royalty 買粉絲(個人開發獨立游戲,你如何解決配樂?)
01 買粉絲 youtube to mp3 player播放器免費(2007年影響人類生活的十大IT產品)
01 gta外貿出口清單載具位置(gta5外貿出口載具送到哪)
01 買粉絲 youtube music(如何在youtubemusic中創建快捷指令)
02 佛祖之手網紅景點(一個人去西安,有沒有不是網紅的景點推薦?)
02 作業魔盒買粉絲(夾在中間左右為難的說說)
02 作業檢查買粉絲推文(怎么寫校運會買粉絲推文?)
01 買粉絲 mp3 320kbps youtube 買粉絲nverter(Marie.Digby.-.[Unfold].專輯 給個地址,最好無損,其次ogg,最次MP3 320k)