python數據分析及其可視化2021 01 09

python數據分析及其可視化實例

一,數據來源

數據來源一般有兩種方式,一是通過爬蟲爬取的數據文件,二是原有的數據集。

1.爬蟲獲取數據

1.爬蟲首先要做的工作就是獲取網頁,這裏就是獲取網頁的源代碼,可用開發者工具獲取獲取網頁所需的headers信息,以及通過查看源代碼得到編碼格式。源代碼裏包含了網頁的部分有用信息,所以只要把源代碼獲取下來,就可以從中提取想要的信息了。前面講了請求和響應的概念,向網站的服務器發送一個請求,返回的響應體便是網頁源代碼。所以,關鍵的部分就是構造一個請求併發送給服務器,然後接收到響應並將其解析出來, Python 提供了許多庫來幫助我們實現這個操作,如 urllib、requests 等。我們可以用這些庫來幫助我們實現 HTTP 請求操作,請求和響應都可以用類庫提供的數據結構來表示,得到響應之後只需要解析數據結構中的 Body 部分即可,即得到網頁的源代碼,這樣我們可以用程序來實現獲取網頁的過程了。

2.獲取網頁源代碼後,接下來就是分析網頁源代碼,從中提取我們想要的數據。首先,最通用的方法便是採用正則表達式提取,這是一個萬能的方法,但是在構造正則表達式時比較複雜且容易出錯。提取信息是爬蟲非常重要的部分,它可以使雜亂的數據變得條理清晰,以便我們後續處理和分析數據。

3.提取信息後,我們一般會將提取到的數據保存到某處以便後續使用。這裏保存形式有多種多樣,如可以簡單保存爲 TXT 文本或 JSON 文本,也可以保存到數據庫,如 MySQL 和 MongoDB 等,也可保存至遠程服務器,如藉助 SFTP 進行操作等。

4.自動化程序是說爬蟲可以代替人來完成這些操作。首先,我們手工當然可以提取這些信息,但是當量特別大或者想快速獲取大量數據的話,肯定還是要藉助程序。爬蟲就是代替我們來完成這份爬取工作的自動化程序,它可以在抓取過程中進行各種異常處理、錯誤重試等操作,確保爬取持續高效地運行。

2.原有數據

通常原有數據都用csv文件保存,這裏所用到的實例就是csv文件,如下圖
在這裏插入圖片描述
這是2020 01 22到2020 02 04的疫情數據,Confirmed是當天確診人數,Deaths是當天死亡人數,Recovered是當天恢復人數。

二,數據分析及其可視化
1.獲取某兩天的柱狀圖進行比較

首先需要讀取文件取出中國大陸的疫情數據保存到data,再取出其中某天的疫情數據保存到data1,去除不必要的數據,方便可視化。源代碼如下:
在這裏插入圖片描述
運行結果如下圖:取的是2020 01 23日的數據
在這裏插入圖片描述
用同樣方法取出2020 02 01日的數據
在這裏插入圖片描述
粗略可以看到柱狀圖沒有明顯變化,但看到縱座標的人數,400和8000相差近20倍,說明病毒傳的很迅速,急需預防,好在這時開始封鎖,阻止了病毒的傳播,由於還有潛伏期,還會快速增長十幾天。





2.獲取其中疫情最嚴重的省份的曲線圖

接着上面寫下列源代碼,找到湖北省的數據,按照時間表示出疫情人數的折線圖。
在這裏插入圖片描述

運行結果如下
在這裏插入圖片描述
可以看到確診人數隨着時間幾乎成指數增長。對待這類疫情,我們應該少在外走動,不聚集活動,服從相關政策安排。

3.獲取數據開始和總和的餅狀圖進行分析

先獲取這段時間確診人數總和,源代碼如下:
在這裏插入圖片描述
運行結果爲
在這裏插入圖片描述
再獲取開始的數據
在這裏插入圖片描述
可以看到比例相差不大,其他城市病例較少,可能有點疏忽,佔比變大了一點,總的來說防禦措施還是相當不錯的。
現在疫情似乎有捲土重來的跡象,現在大家還是安心待在家,儘量少走動,過個好年。






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章