課程資訊
課程名稱
使用R語言進行資料分析
Using R for Data Analysis 
開課學期
107-2 
授課對象
 
授課教師
蔡芸琤 
課號
GenEdu5004 
課程識別碼
H02 50010 
班次
 
學分
3.0 
全/半年
半年 
必/選修
 
上課時間
星期四6,7,8(13:20~16:20) 
上課地點
新103 
備註
需自備筆電.第一堂課未到視同放棄.無須程式背景.。A6:量化分析與數學素養
總人數上限:100人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1072GenEdu5004_ 
課程簡介影片
 
核心能力關聯
本課程尚未建立核心能力關連
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

本課程提供網路數據分析技巧,使用 R 語言分析線上開放數據,研究各領域重要議題,以達到協助各位擁有問題擬定、解決能力及跨領域整合之技能。期望能幫助程式初學者跨越 R 語言相較略微陡峭的學習曲線。

R 語言是一種自由軟體程式語言與操作環境,主要用於統計分析、繪圖、資料探勘,在此背景下,R 語言已成為全球投入資料科學發展的共同工具。本課程使用 R 語言進行資料分析教學,適合完全沒有程式經驗且想踏入資料科學領域的初學者。  

課程目標
每週會對課程建立 Baseline 定義:鋪好自學與共學可進行的路徑。

每位修課學生人在滿足基本條件下,都能獲得『ok』的成績,基本成績 75%。

基本要求範例:一個月產生一個報告(一個資料分析的過程/故事)

自願共學:想要認真學習的人可以『刻意地』選擇自願參與共學模式,除了『基本要求』之外,參與者可自己設定學習目標,獎勵分數配置 25%。

自己沒有能力設目標的話怎麼辦?(教學團隊提供其他具體的學習機會)

教學團隊主要負責的任務:協助學生達成自己的學習目標。

讓學生們可以誠實的進行自評 + 互評,不需要應付,不需要騙人。

每週課堂共學進行方式:把 80 人分成 20 個小組,四人一組(例如:每週 random 抽籤)

[10-15 min] 小組檢討上禮拜的東西
由教學團隊提供一個檢討 Protocol,提出幾個基本問題可以問
例如:『原來的目標有沒有達成?沒有達成的話,是為什麼?』
例如:『本週的專案(學習任務)架構可以視覺化嗎?』
例如:『最大的成就/失敗/問題是什麼?』
例如:『比較結果,個別差別都是什麼?』
例如:『當週的某某重點的程式大家都怎麼寫的?』
例如:『怎麼找到某某某問題的答案?』
列舉出所有學習歷程中會遇到的問題。
[100 min] 教學團隊分別輪流找所有的小組討論,一人 5 組,一組大概 15 min。
評估與掌握每位學生每週的學習過程。 
課程要求
1. 學員參與課程需自備筆記型電腦 (規格不限)。

2. 指定閱讀需於次週上課前完成,搭配課前作業繳交。

3. 能夠接受課堂經營以自學與共學方式進行。

老師不是填鴨式的講授知識,而是給予學習框架,引導學生自主前進,才有辦法面對急速變動的世界。真正達到學習如何學習的訓練模式。

為什麼寫程式這麼難?

先進國家的教育和你想的不一樣:「老師的存在不是給孩子知識,而是讓他們具備學習能力!」

設定三大目標,一個月要做一個,每個『基本成績』配置為 15%。
(通通都做到基本要求就拿到 ok 的成績了)

資料分析,到底還有哪一些大目標跟能力要培養起來?
例如:怎麼用 data 來寫一個『很棒的』的故事?學生親身走出街頭,做調查的技巧?

特殊任務,搭配 20% 的獎勵分數,鼓勵修課學生參與。 
預期每週課後學習時數
 
Office Hours
每週四 17:00~19:00 
指定閱讀
[線上課程] Introduction to R
https://www.datacamp.com/courses/free-introduction-to-r 
參考書目
http://cfss.uchicago.edu/syllabus.html
http://datascienceandr.org/install.html

[電子書] An Introduction to R
https://cran.r-project.org/doc/manuals/R-intro.pdf

[書] R for Data Science
https://r4ds.had.co.nz/

[線上課程] Data Analysis with R
https://eu.udacity.com/course/data-analysis-with-r--ud651 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
期末專案 
30% 
針對專題的意義性、可行性、可用性、執行力與完整度進行評分。 
2. 
個人每月作業 
60% 
每次作業 20%,三次總計 60%。 
3. 
特殊任務 
20% 
自由選擇完成的特殊任務,用於獎勵的配分。 
 
課程進度
週次
日期
單元主題
第1週
2/21  課程基本介紹、進行方式、成績評量規範。

https://docs.google.com/presentation/d/e/2PACX-1vRh_sgxWdN7T77x5VqtCnzFDAPVA9EAyE0UeLg39Ixj_-a2fXUszWFYbP6kHSKqFM-WIGc1knNm9OC5/pub?start=false&loop=false&delayms=3000 
第2週
2/28  228放假一次。 
第3週
3/07  Month #1: Data Manipulation

https://docs.google.com/presentation/d/e/2PACX-1vTgQMuHLTNrL7XfoMiAQT7mVXMKjIvk9206LPR_F_O08WPlR0fYmYty8QZw0N3K44JI0JP0I0fDKJi0/pub?start=false&loop=false&delayms=3000
 
第4週
3/14  Introduction to dplyr and tbls
理解資料並透過 R 對資料進行探索與整理。 
第5週
3/21  Select and mutate
理解資料並透過 R 對資料進行探索與整理。 
第6週
3/28  Filter and arrange
理解資料並透過 R 對資料進行探索與整理。 
第7週
4/04  春假放假一次。 
第8週
4/11  Month #2: Data Manipulation + 自定function
理解資料並透過 R 對資料進行 EDA。 
第9週
4/18  Summarize and the pipe operator
理解資料並透過 R 對資料進行 EDA。 
第10週
4/25  Group_by and working with functions
理解資料並透過 R 對資料進行 EDA。 
第11週
5/02  透過 EDA 進行分析的實例分享。 
第12週
5/09  Month #3: Data Manipulation + 自定function + visualization
https://r4ds.had.co.nz/data-visualisation.html 
第13週
5/16  Creating a ggplot
理解資料並透過 R 對資料進行視覺化。 
第14週
5/23  Statistical transformations
理解資料並透過 R 對資料進行視覺化。 
第15週
5/30  透過資料視覺化進行分析的實例分享。
 
第16週
6/06  期末專題實作與討論。 
第17週
6/13  期末專題。Final Demo。