這篇文章主要講解了“Python怎么分析微信公眾號數(shù)據(jù)”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Python怎么分析微信公眾號數(shù)據(jù)”吧!
柯城ssl適用于網站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!
在日益發(fā)展的社會,人們每天都會產生大量的數(shù)據(jù),很多工作中也常常涉及到對數(shù)據(jù)的處理。而眾多的數(shù)據(jù)讓人頭昏眼花,所以需要對數(shù)據(jù)進行可視化。將數(shù)據(jù)轉換為大腦更容易接受的圖表形式。所以有了后來的excel表格,它在數(shù)據(jù)的可視化處理方面非常強大。但是隨著數(shù)據(jù)量的增大,用excel往往都是重復之前的步驟。效率也就變得很低了,還容易枯燥。于是,python的可視化數(shù)據(jù)來了,在重復這件事上,相信沒有誰可以比程序來得更快更好。所以今天小編就通過實例給大家簡單展示下數(shù)據(jù)的可視化處理。
首先是python環(huán)境不用多說,然后是可讀取excel的xlrd模塊和強大的可視化模塊pyecharts。兩者都通過pip安裝即可。
pip install xlrd pip install pyecharts
然后直接導入對應模塊和類即可。
#導入模塊 from pyecharts.charts import Bar from pyecharts import options as opts import xlrd #讀取excel的模塊
3.1 讀取excel表格
為了方便首先將準備好的excel表格放置在py文件同目錄下,然后運行以下代碼即可讀取。
data = xlrd.open_workbook("gongzhonghao.xls") #打開工作表 table = data.sheets()[0] #找到excel中對應的sheet表,這里是第一個
讀取excel表格的行和列都是以列表的形式返回的。
3.2 數(shù)據(jù)分析
通過以上代碼讀取到對應的excel表格后,在通過簡單的代碼對數(shù)據(jù)進行處理。首先要知道一個柱狀圖有什么。柱狀圖有x、y軸。一般x軸只有一條數(shù)據(jù),所以通過上面excel表中的內容可以得出用作者作為x軸最好。然后小編這次的目的是統(tǒng)計每個作者發(fā)布的文章數(shù)和文章總得分(總得分=每篇文章的在看數(shù)加閱讀數(shù)的1/10和點贊數(shù)的1/2)。所以就可以以文章數(shù)和得分作為y軸。
allData = {} #用來儲存作者與文章的數(shù)據(jù) for i in range(1,table.nrows): #遍歷表格中的每一行 look = table.row_values(i)[2] #在看 read = table.row_values(i)[3] #閱讀數(shù) like = table.row_values(i)[4] #點贊 score = look + read * (1 / 10) + like * (1 / 2) #每篇文章得分 if table.row_values(i)[1] not in allData.keys(): #判斷儲存數(shù)據(jù)的字典中是否有該作者 allData.get(table.row_values(i)[1]) #沒有就添加 allData[table.row_values(i)[1]] = [1,score] #為這個作者添加值(文章數(shù)和得分) else: allData[table.row_values(i)[1]][0] += 1 #有就文章數(shù)加一 allData[table.row_values(i)[1]][1] += score #累計得分 author = list(allData.keys()) #獲取作者表 datas = list(allData.values()) #獲取數(shù)據(jù)表 articleCount = [] #儲存文章數(shù) articleScore = [] #儲存得分 for i in datas: #遍歷數(shù)據(jù)表 articleCount.append(i[0]) #添加文章數(shù) articleScore.append(round(i[1],1)) #添加的得分
上面的代碼簡單的運用了python的遍歷和字典的知識。由于本文的重點是可視化,所以這里就不做詳細說明了。
3.3可視化
通過上面的數(shù)據(jù)處理,就已經拿到了x,y軸的數(shù)據(jù)了,接下來就直接使用pyecharts模塊進行渲染配置。
bar = (Bar() #對柱狀圖進行簡單配置 .add_xaxis(author) #設置橫坐標為作者 .add_yaxis('文章數(shù)',articleCount) #縱坐標一為文章數(shù) .add_yaxis('得分',articleScore) #縱坐標二為得分 .set_global_opts( #全局配置,標題、副標題、坐標軸、主題等 title_opts=opts.TitleOpts(title = '公眾號得分數(shù)據(jù)分析',subtitle = '近期作者發(fā)布文章數(shù)與得分情況') ) ) bar.render() #生成html文件
#導入模塊 from pyecharts.charts import Bar from pyecharts import options as opts import xlrd #讀取excel的模塊 data = xlrd.open_workbook("gongzhonghao.xls") #打開工作表 table = data.sheets()[0] #找到excel中對應的sheet表,這里是第一個 allData = {} #用來儲存作者與文章的數(shù)據(jù) for i in range(1,table.nrows): #遍歷表格中的每一行 look = table.row_values(i)[2] #在看 read = table.row_values(i)[3] #閱讀數(shù) like = table.row_values(i)[4] #點贊 score = look + read * (1 / 10) + like * (1 / 2) #每篇文章得分 if table.row_values(i)[1] not in allData.keys(): #判斷儲存數(shù)據(jù)的字典中是否有該作者 allData.get(table.row_values(i)[1]) #沒有就添加 allData[table.row_values(i)[1]] = [1,score] #為這個作者添加值(文章數(shù)和得分) else: allData[table.row_values(i)[1]][0] += 1 #有就文章數(shù)加一 allData[table.row_values(i)[1]][1] += score #累計得分 author = list(allData.keys()) #獲取作者表 datas = list(allData.values()) #獲取數(shù)據(jù)表 articleCount = [] #儲存文章數(shù) articleScore = [] #儲存得分 for i in datas: #遍歷數(shù)據(jù)表 articleCount.append(i[0]) #添加文章數(shù) articleScore.append(round(i[1],1)) #添加的得分 bar = (Bar() #對柱狀圖進行簡單配置 .add_xaxis(author) #設置橫坐標為作者 .add_yaxis('文章數(shù)',articleCount) #縱坐標一為文章數(shù) .add_yaxis('得分',articleScore) #縱坐標二為得分 .set_global_opts( #全局配置,標題、副標題、坐標軸、主題等 title_opts=opts.TitleOpts(title = '公眾號得分數(shù)據(jù)分析',subtitle = '近期作者發(fā)布文章數(shù)與得分情況') ) ) bar.render() #生成html文件
感謝各位的閱讀,以上就是“Python怎么分析微信公眾號數(shù)據(jù)”的內容了,經過本文的學習后,相信大家對Python怎么分析微信公眾號數(shù)據(jù)這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關知識點的文章,歡迎關注!
網站欄目:Python怎么分析微信公眾號數(shù)據(jù)
鏈接URL:http://muchs.cn/article36/jpshpg.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站維護、移動網站建設、網站設計公司、搜索引擎優(yōu)化、ChatGPT、用戶體驗
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)