這是數據分析 Python 系列的第一篇!也是這個網站的全新單元,接下來,我會以文組腦來講解學習 Python 數據分析的捷徑,希望可以幫助到更多對程式 (coding) 有點害怕的大家!
內容目錄
隱藏
為什麼數據分析師要學 Python?
- Python 的作用很多:可以自動化、可以爬蟲、可以做數據分析;本質上,Python 是一個代替我們操作電腦運算的工具
- Python 對於數據分析來說有幾個很核心的功能:
- 數據工程:將後端資料串接到資料庫中,大部分都是用 Python 處理
- 數據分析:除了試算表 (Excel、Google Sheet) 外、SQL (查詢資料庫的語言) 外,Python 絕對是進階數據分析的必備工具
- 資料科學:模型、演算法都一定會使用到 Python
- 雖然說 Python 很重要,但是以一個文組腦出生的我來說,我會建議優先學試算表跟 SQL,因為這兩個是資料的基本架構跟處理方法,如果連基本處理都還沒學好,就去學 Python,很容易學不會甚至是放棄
- 因此,建議大家「初學時」不用一開始就一股腦的學 Python,這不是最佳的學習途徑
Google Colab 是什麼?跟 Python 有什麼關係?
- Google 開發:Google Colab 是由 Google Research 開發出來的一套產品
- 只要有 Gmail 帳號就可以輕易開始探索 Python 語言:用 Google Drive 就可以開啟 Google Colab
- Google Colab 是一個建立在 Jupyter Notebook 之上的免費虛擬主機
- 開啟一個 Google Colab 的「記事本」之後,就可以開始打程式,而所有程式碼的變動也會儲存在 Google 雲端,再次回來之後,還是可以繼續跑資料
為什麼我推薦初學 Python 用 Google Colab?
我曾經學過 Python 3 次,前 2 次都沒有學成 (沒有應用就放棄),我總結了 2 個主要放棄的原因:
- 開啟 Python 編輯器太麻煩:即使是使用大部分人推薦的 jupyter notebook (安裝跟開啟已經很簡單了),但仍然有一點門檻在,久了忘記怎麼開之後,就沒繼續用了
- 學習的內容跟自己的工作流程或工作內容沒關係:如果學習的內容無法應用在自己的生活中,基本上過了一個月後,就會忘記,即使記得,通常只要出現一點變化場景,可能就不會解了 (對自己不熟悉的領域,這種狀況非常正常)
所以我的結論會是:
- 用門檻最低的方式,開啟 Python 語言記事本:目前我看到最簡單的就是 Google Colab
- 把平常的工作流程跟內容,學著用 Python 完成
如何把開始使用 Google Colab?3 步驟教學
- 步驟一:開啟 Google Colab
- 步驟二:「檔案」 → 「新增記事本」
- 步驟三:可以開始打 Python 的程式碼了!而且所有內容都會被儲存在你的 Google Drive 內
- 提醒:如果需要重新開啟這個記事本,可以從 Google Drive 開啟,或是記住網址,以網址開啟這個記事本!
如何把資料匯入?試算表或是 Excel 都可以
Python 基本注意事項
- 今天會用到的 Python 模組主要為:pandas,可以把模組想像成一座圖書館,裡面有很多前輩把書寫好了,只要引用書裡面的資訊,就可以完成很多我們想完成的行動
- 「#」這個符號是註解的意思,加上這個符號之後,這一段程式碼會變成筆記形式,不會運行
以 Google Sheet 為資料來源
- 步驟一:匯入套件並且執行 Google 帳號驗證
- 步驟二:讀取 Google Sheet 試算表內的資料
- 步驟三:將 Google Sheet 內資料轉變成 Python 內的 DataFrame (表格) 形式
# 步驟一:匯入套件並且執行 Google 帳號驗證
# 查看gspread版本
# ref: <https://cyublog.com/articles/python-zh/colab-tutorial-google-spreadsheet/>
import gspread
print(gspread.__version__)
# 執行驗證
from google.colab import auth
auth.authenticate_user()
import gspread
from google.auth import default
creds, _ = default()
gc = gspread.authorize(creds)
# 步驟二:讀取 Google Sheet 試算表內的資料
# 讀取 google sheet
workbook = gc.open_by_key('1xbOGq5bd-AcEbxPXb8ZLh1CNjCxZLHMiZgANdMUEvnw')
# 讀取特定的 tab
sheet = workbook.worksheet('order_tab')
- 注意事項:放上 Google Sheet 連結的最後一串識別碼,在 d/ 後面,/edit 前面的那一段碼
# 步驟三:將 Google Sheet 內資料轉變成 Python 內的 DataFrame (表格) 形式
# pandas: 將表格轉換成dataframe來處理
import pandas as pd
values = sheet.get_all_values()
df = pd.DataFrame(values[1:], columns=values[0])
# 處理一下 data type (不一定需要)
df["shipping_fee_usd"] = df['shipping_fee_usd'].astype("float")
df.info()
以 Excel (.csv) 為資料來源
- 步驟一:將 Excel 儲存成 UTF-8編碼 及 csv 的檔案
- 步驟二:上傳 csv 檔案
- 步驟三:讀取上傳的檔案
# 步驟二:上傳 csv 檔案
from google.colab import files
# 上傳csv檔案
uploaded = files.upload()
# 步驟三:讀取檔案
# 參考:<http://icekuo.blogspot.com/2020/10/python-google-colabexcelcsv.html>
import io
import pandas as pd
df_excel = pd.read_csv(io.BytesIO(uploaded['order_tab.csv']))
df_excel
Python 數據分析基礎:算術統計
- 用 Pandas 裡的 describe 計算「數值 (可被運算)」欄位的算術平均
# Python 數據分析基礎:算術統計
result = df.describe()
result
結論:學 Python 先學著用 Google Colab
- 門檻最低的工具:我推薦 Google Colab
- 先學會開啟他,接著把資料匯進去,接著做基本的算數平均計算:像是平均、最大、最小等等的運算
- 分享一下範例檔案
Pingback: [數據分析#0] 數據分析文章導覽 - Lisa Wu