如何利用Python進行數據分析?

張曉家


在不同的場景下通常可以採用不同的數據分析方式,比如對於大部分職場人來說,Excel可以滿足大部分數據分析場景,當數據量比較大的時候可以通過學習數據庫知識來完成數據分析任務,對於更復雜的數據分析場景可以通過BI工具來完成數據分析。通過工具進行數據分析一方面比較便捷,另一方面也比較容易掌握。

但是針對於更加開放的數據分析場景時,就需要通過編程的方式來進行數據分析了,比如通過機器學習的方式進行數據分析,而Python語言在機器學習領域有廣泛的應用。採用機器學習的方式進行數據分析需要經過五個步驟,分別是數據準備、算法設計、算法訓練、算法驗證和算法應用。

採用機器學習進行數據分析時,首先要了解一下常見的算法,比如knn、決策樹、支持向量機、樸素貝葉斯等等,這些算法都是機器學習領域非常常見的算法,也具有比較廣泛的應用場景。當然,學習這些算法也需要具備一定的線性代數和概率論基礎。學習不同的算法最好結合相應的應用場景進行分析,有的場景也需要結合多個算法進行分析。另外,通過場景來學習算法的使用會盡快建立畫面感。

採用Python進行數據分析還需要掌握一系列庫的使用,包括Numpy(矩陣運算庫)、Scipy(統計運算庫)、Matplotlib(繪圖庫)、pandas(數據集操作)、Sympy(數值運算庫)等庫,這些庫在Python進行數據分析時有廣泛的應用。

我從事互聯網行業多年,目前也在帶計算機專業的研究生,主要的研究方向集中在大數據和人工智能領域,我會陸續寫一些關於互聯網技術方面的文章,感興趣的朋友可以關注我,相信一定會有所收穫。

如果有互聯網方面的問題,或者考研方面的問題,都可以諮詢我,謝謝!


IT人劉俊明


利用Python進行數據分析,既可以做常規的統計分析,也可以利用機器學習算法進行數據挖掘。

下面分享一個Python數據分析案例:用Python爬取騰訊課堂“前端開發”品類下的課程數據,然後做數據分析,並進行可視化。

整個數據分析過程,主要做了以下3件事情:

  1. 數據採集:利用requests實現Python爬蟲
  2. 數據清洗:正則表達式、數據類型轉換。
  3. 數據分析:分組統計、數據可視化。

在騰訊課堂首頁,選擇“前端開發”品類,打開頁面如下所示。

1.數據採集:利用requests實現Python爬蟲

利用Python爬蟲爬取騰訊課堂“前端開發”品類下33頁的課程數據。

以上代碼執行完畢後,查看數據。

從上面看到,共採集到792條記錄。

<strong>2.數據清洗:正則表達式、數據類型轉換

針對上述採集到的數據,需要做以下事情:

  1. 購買人數:只關心其中的數字,需要把其中的非數字符號去除。

  2. 價格:只關心其中的數字,需要把免費替換為0,有價格的裡面的人民幣符號¥去除。

清洗思路:利用正則表達式替換。

有了思路後,下面通過for循環處理所有數據。

以上只是把無關的符號去除了,但是數據類型還有問題,通過type查看可以發現,購買人數及價格雖然是數字,但其實是字符串類型,所以還需要通過astype進行類型轉換。

經過以上處理,可以看到購買人數、價格都被轉換成了數值型。

3.數據分析:分組統計、可視化

首先通過describe函數對數據進行描述性統計分析。

說明:加上include參數可以讓所有字段都顯示,包括非數值型字段。

對該品類(前端開發,以下簡稱該品類)的描述性統計分析可以看出:

  1. 總共有10個教育機構提供了792門課程。
  2. 報名人數最多的一門課程有6156人報名,最貴的一門課程價格為15698元。
  3. 該品類下的課程的平均報名人數為1451人,平均價格為681元。


以下按照“機構”進行分組統計。


還可以通過matplotlib進行數據可視化。

以下展示的是報名人數前10的教育機構。

以下通過餅圖展示每個機構的課程數。

還可以通過折線圖展示每個機構的報名人數。

回答完畢!


數據分析那些事


學習下python的pandas方法就可以了,先判斷數據是否有缺失,然後缺失的處理、重複數據的處理,中位數,平均值等都可以處理了


分享到:


相關文章: