數據科學實戰課程

  • 1

    數據科學工具入門

    • 歡迎

    • 什麼是數據科學?

    • 工具選擇:R 或 Python

    • 課程目標

    • 下載R及RStudio

    • 安裝R

    • 安裝RStudio

    • 什麼是RStudio

    • 啟動RStudio

    • RStudio介面的四個方格

    • RStudio 工作流程五部曲

    • RStudio 貼士

    • 下載課程檔案

    • 課程檔案結構介紹

    • RStudio設定工作目錄

    • 更多 RStudio 貼士:編程註解

    • 基本R編程 Basic R Programming

    • RStudio編程碼行數

    • 使用R進行基本算術運算

    • 變數(Variables)

    • 變數(Variables)2-命名規則

    • 變數(Variables)3-覆寫特性

    • 變數(Variables)4-控制variables之間的互動

    • 課程小練習介紹

    • RStudio練習-創建三個variables

    • RStudio練習-創建三個variables-答案

    • 列表(Vectors)

    • 函數/功能(Functions)

    • Functions例子:計算平均值

    • 錯誤與警告(Error and Warning)

  • 2

    數據科學項目流程

    • 探索式數據分析(Exploratory Data Analysis EDA)

    • 本單元數據介紹

    • Kaggle

    • Exploratory Data Analysis 七部曲

    • 第一步:數據字典 Data Dictionary

    • 第二步:R導入數據

    • 第三步:檢查數據-預覽

    • 第三步:檢查數據-查看數據結構

    • R 編程解讀

    • 第三步:檢查數據-預設數據類型

    • 第三步:檢查數據-預設數據類型2

    • R編程解讀2

    • 第四步:數據整理

    • 練習:整理variables的數據類型

    • 練習:整理variables的數據類型-答案

    • 第四步:數據整理2

    • 第五步:特徵工程(Feature Engineering)

    • 練習:創建新的variable

    • 練習:創建新的variable-答案

    • 第五步:特徵工程(Feature Engineering)2

    • 技巧:數據切割(Data Slicing and Dicing)

    • 技巧:數據切割(Data Slicing and Dicing)2

    • 技巧:數據切割(Data Slicing and Dicing)3

    • 技巧:數據切割(Data Slicing and Dicing)4

    • 數據切割(Data Slicing and Dicing)-子數據集

    • 第六步:描述數據(Summarise data)

    • 第六步:描述數據(Summarise data)-連續變數

    • 第六步:描述數據(Summarise data)-連續變數2

    • 練習:比較生還者與遇難者的船費

    • 練習:比較生還者與遇難者的船費-答案

    • 第六步:描述數據(Summarise data)-分類變數

    • 第六步:描述數據(Summarise data)-分類變數2

    • 第7步:Data Visualisation (數據視覺化)

    • 建立圖表

    • 繪圖套件ggplot2

    • 利用ggplot2描述continuous variables

    • 安裝及使用CRAN套件

    • 以arguments優化圖表

    • ggplot 的警告與提示

    • 以arguments優化圖表2

    • 利用histogram 再次對比生還者及遇難者的variables

    • 利用圖表特顯variables之間的關係

    • 利用ggplot2描述categorical variables

    • 利用ggplot2優化圖表

    • 描述兩個categorical variables 之間關係的Bar Chart

    • 描述三個categorical variables 之間關係的Bar Chart

    • 練習:製作一張描述家庭大小的圖表

    • 練習討論:製作一張描述家庭大小的圖表

    • 數據探索的工作的局限性

    • 第七部:數據是覺化(Data Visualisation) - 總結

    • Exploratory Data Analysis - 總結

    • Exploratory Data Analysis - 作業

  • 3

    建立一個推薦系統 (即將上載單元3至8字幕)

    • Associate Rule Mining (ARM)簡介

    • ARM:關聯規則學習

    • ARM:關聯規則學習 2

    • Associate Rule Mining:數據格式

    • Associate Rule Mining:Support

    • Associate Rule Mining:Support 2

    • Associate Rule Mining (ARM):Confidence

    • Associate Rule Mining:Lift

    • Associate Rule Mining:Lift 2

    • Apriori 演算法

    • 安裝arules 套件

    • arules 鎖定目錄貼士

    • ARM 應用數據

    • ARM 應用數據2

    • ARM 應用數據整合

    • ARM 應用數據檢視

    • ARM 數據整理

    • ARM 應用:數據描述

    • ARM應用:執行Apriori 演算法

    • ARM應用:執行Apriori 演算法 2

    • ARM應用:執行Apriori 演算法 3

    • ARM應用:觀看結果

    • ARM應用:導出檔案

    • 練習:為RetailData.csv的產品類別進行一次ARM

    • 練習:為RetailData.csv的產品類別進行一次ARM 2

    • ARM 應用

    • 更多ARM 應用:「一行一紀錄」格式

    • 更多ARM 應用:「一行一紀錄」格式 2

    • 更多ARM 應用:「一行一紀錄」格式 3

    • 練習:根據特定variable 條件進行ARM

    • 練習:根據特定variable 條件進行ARM 2

    • ARM 應用

    • 功課

  • 4

    機器學習預測應用

    • Linear regression 預測分析應用

    • 線性迴歸

    • 線性迴歸 2

    • 多元迴歸

    • 過度擬合 Overfitting

    • Caret 套件

    • 安裝Caret 套件

    • 安裝Caret 套件可能出現的問題

    • Linear Regression 應用:數據來源

    • Linear Regression 應用 2

    • Linear Regression 應用:數據探索

    • Linear Regression 應用:檢視相關性

    • Linear Regression 應用:檢視相關性 2

    • Linear Regression 應用:檢視相關性 3

    • Linear Regression 應用:建立模型

    • Linear Regression 應用:建立模型 2

    • Linear Regression 應用:傳統統計分析結果

    • Linear Regression 應用:傳統統計分析結果 2

    • Linear Regression 應用:傳統統計分析結果 3

    • Linear Regression 應用:傳統統計分析結果 4

    • Linear Regression 應用:評估預測結果

    • Linear Regression 應用:評估預測結果 2

    • Linear Regression 應用:評估預測結果 3

    • 練習:建立3個linear regression 模型

    • 練習:建立3個linear regression 模型 2

    • 練習:建立3個linear regression 模型 3

    • 傳統統計分析 VS 機器學習

    • 傳統統計分析 VS 機器學習

    • 小心評估你的模型

    • Linear regression 總結

  • 5

    資料導向決策

    • 資料導向決策

    • Decision Tree 決策樹

    • Decision Tree:分類預測

    • Decision Tree:分類預測 2

    • Decision Tree:原理

    • Decision Tree:原理及例子

    • 應用:預測賽馬結果

    • 應用:遂一觀察predictor 與輸贏關係

    • Leaf Nodes

    • Gini Index

    • Gini Index 2

    • Gini Index 3

    • 為Leaf Nodes 附上標籤

    • Decision Tree 原理總結

    • 使用Caret 建立Decision Tree模型

    • 數據檢查與整理

    • 數據檢查與整理 2

    • 數據檢查與整理 3

    • 數據分割:training data 與test data

    • 數據分割:training data 與test data 2

    • 什麼是set.seed()

    • 設定模型建立流程

    • 設定模型建立流程 2

    • 設定模型建立流程 3

    • 建立模型

    • 建立模型 2

    • 檢視結果

    • 檢視結果 2

    • 檢視結果 3

    • 檢視結果 4

    • 檢視結果 5

    • Decision Tree 應用

    • 練習:建立一個Decision Tree 模型

    • 練習:建立一個Decision Tree 模型2

    • 決策樹好處

    • Random Forest 隨機森林

    • Machine Learning 流程8部曲

    • 功課

  • 6

    群集分析

    • 什麼是群集分析

    • 群集分析的目標

    • k-平均演算法

    • 在R執行k-means clustering

    • Cluster Analysis 結果

    • Cluster Analysis 結果 2

    • Cluster Analysis 結果應用

    • Cluster Analysis 結果應用 2

    • Machine Learning 總結

  • 7

    開發數據產品

    • 開發數據產品介紹

    • R Markdown 與 R Notebook

    • 創建R Notebook

    • 創建R Notebook 2

    • R Notebook 文字部分

    • R Notebook 文字部分 2

    • R Notebook 文字部分 3

    • R Notebook 編程碼部分

    • R Notebook 編程碼部分 2

    • Titanic Data Set

    • Titanic Data Set 2

    • 練習:建立分析報告

    • 練習:建立分析報告 2

    • R Notebook 導出

    • R Notebook 導出:注意事項

    • R Notebook 導出 2

    • Shiny 套件介紹

    • 安裝Shiny 套件

    • Shiny App 結構

    • Shiny App 運作流程

    • R Notebook 與Shiny

    • Shiny:Input

    • Shiny:Output

    • Shiny:Output 2

    • Shiny:Input and Output Functions

    • Shiny:Input and Output Functions 2

    • 練習:製作一張互動圖表

    • 練習:製作一張互動圖表 2

    • R Notebook 與Shiny 總結

    • R Notebook 與Shiny 總結 2

  • 8

    機器學習與人工智能的前景

    • 總結:機器學習與人工智能

    • 如何學習新技術

    • 如何開始一個數據科學項目

    • Kaggle

    • 更多學習資源

    • 結語

    • 課程項目作業參考答案