Python 從入門到數據分析 第一講 — Python 簡介- Python介紹與初探

Data analysis

Python 從入門到數據分析系列正式展開!

歡迎您從零開始學習Python與程式語言!

寫在前頭:

一直以來以分享數據分析、商業分析、資料科學為主,即使有了大受好評的程式入門系列,但考慮到多數文章使用分析工具都以Python 為主,決定撰寫這一系列文章幫助剛看完程式,對於Python數據分析感到好奇的朋友入門,並且銜接與實作我過往的文章。如此一來您能夠透過這一系列文章學習Python 程式語言,做Python商管程式設計,同時配合其他文章實作數據分析。

目前初步規劃章節如下:

  • Python 簡介: Python介紹與初探
  • 變數與基礎運算
  • 條件
  • 迴圈
  • 函式
  • 物件導向程式語言設計
  • 迭代物件
  • Python 資料結構 : String , List, Tuple
  • Python 資料結構 : Dict , Set
  • 數據處理 Pandas / Numpy

理論上讀完所有章節可以預期您學習完畢大學程度的一學期程式語言課程,能夠使用Python作到自動化部分Excel工作、了解基礎電腦科學知識、基礎程式語言知識,並且透過進一步專案來學習完成專案所需學習的其他Python library。

Python 概述 — 什麼是Python ?

Why Python?

Python的創始人為吉多·范羅蘇姆,當時他在阿姆斯特丹的荷蘭數學和電腦科學研究學會工作。1989年的聖誕節期間,吉多·范羅蘇姆為了打發時間,決心開發一個新的指令碼解釋程式,作為ABC語言的一種繼承,替代使用Unix shell和C語言進行系統管理,擔負同Amoeba作業系統的互動和例外處理。

當初的馬戲團劇照

之所以選中Python作為程式的名字,是因為他是BBC電視劇 — — 《蒙提·派森的飛行馬戲團》(Monty Python’s Flying Circus)的愛好者。

Python支援多種程式設計範式,包括函數式、指令式、結構化、物件導向和反射式程式。它擁有動態型別系統和垃圾回收功能,能夠自動管理記憶體使用,並且其本身擁有一個巨大而廣泛的標準庫。

Why Python ? Python商管程式設計定位?

程式語言百百種,為何是Python ?

其實許多工具都能夠作為數據分析的利器,比如Google Analytics、Power BI、Tableau,許多程式語言也具有開發為數據分析工具的能力,比如股票、金融分析常用的C#/C++、常用於統計、計量運算的R,甚至操作資料庫語言SQL、熟悉的試算表應用開發Excel VBA,那為什麼我會挑選Python作為數據分析的工具呢?相比與「軟體」與「其他程式語言」,為何是Python?

勝過軟體:方便度、彈性

Python 彈性相比軟體高出非常多,比如我可以自己撰寫SPSS、SAS等分析功能,透過自己撰寫來達到客製化效果,甚至運用Plotly等Python庫來做酷炫、互動式的資料視覺化

勝過程式語言:端到端數據處理,一次搞定

Python 滿足數據抓取、基礎數據分析、數據處理的良好特質,又蘊含強大的計算效果,甚至可以進一步開發為資料產品(比如資料儀表板、機器學習可解釋性儀表板),意思就是,作為運行端到端數據分析的工具,我只需要透過Python基本上是可以滿足所有需求的。

為什麼這很重要呢?因為過去許多分析師的做法是下載資料直接從資料庫讀入、對於爬蟲不熟悉,用Excel分析,但受限於資料量與視覺化不夠直覺因此拖慢效率與處理效能,最後要輸出報表也只能透過大量截圖、截表格再放到word、PPT上

但透過Python可以直接滿足整個數據收集、分析、輸出、產品化流程,甚至輸出成報表、嫁接到網頁上等來呈現。

而其他Python 特點如下:

  • 開源/免費:個人可增加數據力,企業可增強運行效率
  • 強大的學習交流和培訓資源:學習資源多,99%遇到問題可透過Google解決
  • 開發效率高:數位轉型必備
  • 簡單易學:對於第一門程式語言入門友善
  • 可移植性強:跨平台開發,不必擔心硬體與系統
  • 與其他語言的集成:集成性高,是好的工程師team player
  • 擴展性強:學過基礎,想要拓展到其他分析、產品等應用領域都很容易

我將會分述如下:

開源/免費

Python是FLOSS(自由/開放原始碼軟體)之一,使用Python(及其第三方庫)無需任何產品購買,授權或許可費用,舉例來說相比於許多企業常用的SAS、SPSS ,Python 基本上都能達到相同的功能,但不分團體或者個人均為免費。

強大的學習交流和培訓資源

生態豐富,意味著許多問題前人已經碰過了

Python已經成為世界上最主流的數據分析工具與程式語言,有非常多的學習社群,Blog,論壇,培訓,教育機構提供了許多交流、互相學習的機會。

開發效率高

Python語言簡潔。這對於以效率優先的程序工作或驗證性項目非常關鍵,尤其是在數位轉型需求上特別重要,舉例來說通常我們不確定一個數位專案的導入對於企業的影響,此時用Python可以快速構建一個MVP(最小可行性產品)嘗試數位使用案例對組織的影響,方便又零成本。

簡單易學

第一次學程式的人也不必擔心!

Python語法簡單,沒有任何程式語言基礎的人也能在幾個小時能掌握基本的Python語法與撰寫方法。這對於初學者而言很友善,透過英文式語法就可以學習使用Python來運算,並且完成許多Excel的數據自動化處理需求。

可移植性

Python 可以跨Windows,Linux,Mac等多平台運行,這使得它的移植性非常強,一次開發,多平台應用。

與其他語言的集成

Python具有“膠水”能力,能與Java,C,C ++,MATLAB,R等集成使用,這意味著你既可以把其他語言寫到的腳本嵌入Python,也可以把Python Script嵌入其他語言(比方說我可以把Python嵌入C/C++),集成不同程式碼。

擴展性強

通常寫程式很多功能不需要自己寫,工程師習慣透過模組化來重複利用某些特定功能,這個我們在庫與包章節會詳細介紹,Python 具有豐富的結構化和非結構化包與程式庫,可以透過方便的pip來快速安裝、使用。

豐富的生態圈
  • 資訊工程方面:執行緒、正規表示法、網頁瀏覽、電子郵件、XML、GUI(圖形化用戶介面)
  • 數據分析方面:Python自帶數學、科學計算庫,還包括豐富的第三方庫和工具,例如用於連接Oracle,MySQL,SQLite等數據庫連結,數據科學計算庫Numpy,Sciy,Pandas,文本處理庫NLTK,機器學習庫Scikit-Learn,Theano,圖形視頻分析處理和挖掘庫PIL和Opencv以及開源計算框架Tensorflow等。

之後我們會透過Colab來學習寫程式與實作Python

Google雲端硬碟可以寫程式哦!

下一章開始,我就會開始帶大家正式開始寫程式,因為Python已經被大量使用,我們可以透過Google雲端來建立寫程式的介面(甚至提供機器學習的免費運算資源),幫助大家跳過繁雜的環境設定而專心在語言學習上面。

那麼這就是本次的第一講:Python 從入門到數據分析 — Python介紹與初探,下一章我們就會開始介紹基礎的變數囉!

歡迎對數據分析、商業策略有興趣的讀者追蹤,我們下一篇文章見!

歡迎想學習Python資料科學、商業分析、金融知識的人一起交流!本部落格的內容全部都是基於「分享」的實作、理論兼顧文章,希望能夠幫助到所有對資料科學領域有興趣的人們,長期關注可按左手邊的Follow!若喜歡我在 Medium 的內容,可以拍個手(Claps)這邊想做個實驗,好讓我知道你/妳喜不喜歡這篇文章:
拍 10 下:簽個到,表示支持(謝謝鼓勵!)
拍 20 下:想要我多寫「商管相關」
拍 30 下:想要我多寫「資科相關」
拍 50 下:我有你這讀者寫這篇也心滿意足了!

敬請期待下一篇!或是您也可以逛逛我的其他資料科學文章,到我的主頁置頂文章獲得良好的目錄體驗。

Python資料科學系列:

如果想跟著我實作資料科學,開始寫程式必知必會基礎系列:

--

--

戴士翔 | Dennis Dai
Finformation當資料科學遇上財務金融

外商分析顧問,Ex- Apple Data Scientist,曾在FMCG巨頭/日商管顧/MBB管顧/高成長電商從事商業分析與數位轉型,專注分享管顧、商業、數據分析的思考。分析/演講/合作歡迎來信:dennis.dai.1011@gmail.com