課程名稱 |
使用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。 |