課程名稱 |
R程式語言與資料處理 Data Manipulation with R |
開課學期 |
107-1 |
授課對象 |
|
授課教師 |
吳齊軒 |
課號 |
LibEdu1094 |
課程識別碼 |
H01 09400 |
班次 |
|
學分 |
2.0 |
全/半年 |
半年 |
必/選修 |
|
上課時間 |
第7,8,9,10,11,12,13,14,15 週 星期四7,8,9,10(14:20~18:20) |
上課地點 |
綜302 |
備註 |
密集課程。自備筆電.現非電資學院學生選修.每週四小時(三小時lecture+一小時作業討論)。A6:量化分析與數學素養 總人數上限:40人 |
Ceiba 課程網頁 |
http://ceiba.ntu.edu.tw/1071RDM |
課程簡介影片 |
|
核心能力關聯 |
本課程尚未建立核心能力關連 |
課程大綱
|
為確保您我的權利,請尊重智慧財產權及不得非法影印
|
課程概述 |
這是R語言的中階課程,同學應該具備基礎的R語言知識,如:R語言的語法規則、基本函數的使用、如何與R互動找出語法上的錯誤。資料處理是資料科學工作中最花時間的部份。這系列課程希望能基於我的實務經驗,向同學介紹使用R語言作資料處理時,重要的知識與技術。 |
課程目標 |
1.掌握處理非結構化、半結構或與結構化資料的技術
2.利用整理後的資料製作Dashboard
3.掌握時間與空間的資料處理技術
4.掌握資料整合的技術 |
課程要求 |
利用R語言翻轉教室系統完成相關的作業
**要加簽的同學請在第一週的週四第10堂課時至授課教室出席,領取授權碼。
選到R程式語言與資料處理的同學優先加簽R程式語言入門。
選到R程式語言入門的同學優先加簽R程式語言與資料處理。 |
預期每週課後學習時數 |
|
Office Hours |
|
指定閱讀 |
待補 |
參考書目 |
1.指定閱讀 (請詳列每週學生應配合閱讀之篇章)
課程投影片、R語言翻轉教室(http://datascienceandr.org/material.html )
2.延伸閱讀 (請詳列每週學生應配合閱讀之篇章)
- Introduction to dplyr. https://cran.r-project.org/web/packages/dplyr/vignettes/dplyr.html
- Programming with dplyr. https://cran.r-project.org/web/packages/dplyr/vignettes/programming.html
- Two-table verbs. https://cran.r-project.org/web/packages/dplyr/vignettes/two-table.html
- Getting started with JSON and jsonlite. https://cran.r-project.org/web/packages/jsonlite/vignettes/json-aaquickstart.html
- A Common Interface to Relational Databases from R and S – A Proposal. https://cran.r-project.org/web/packages/DBI/vignettes/DBI-proposal.html
- Class and Methods for Spatial Data: the sp package. https://cran.r-project.org/web/packages/sp/vignettes/intro_sp.pdf |
評量方式 (僅供參考) |
|
週次 |
日期 |
單元主題 |
第7週 |
10/25 |
<h2>R語言的基礎語法與基礎物件</h2>
<ul>
<li>R語言的基礎語法</li>
<li>函數的使用方法</li>
<li>如何與R互動來解決R的語法問題</li>
<li>R語言翻轉系統使用說明</li>
</ul>
<a href=http://homepage.ntu.edu.tw/~wush978/rdataengineer/week1.html>投影片</a> |
第8週 |
11/01 |
<h2>資料科學的Hello World與資料視覺化</h2>
<ul>
<li>以案例描述在實務的資料科學工作中,需要優先進行的工作</li>
<li>請D4SG資料英雄計畫主持人介紹<a href=https://d4sg.org/>Data for Social Good</a></li>
<li>R語言的資料視覺化</li>
</ul>
<a href=http://homepage.ntu.edu.tw/~wush978/rdataengineer/week2.html>投影片</a> |
第9週 |
11/08 |
<h2>R語言的資料視覺化</h2>
<ul>
<li>R語言的資料視覺化</li>
<li>Shiny Application</li>
<li>Rmarkdown</li>
</ul>
<a href=http://homepage.ntu.edu.tw/~wush978/rdataengineer/week3.html>投影片</a> |
第10週 |
11/15 |
校慶休假 |
第11週 |
11/22 |
<h2>非結構化與半結構化的資料處理</h2>
<ul>
<li>純文字的資料處理:分割與擷取</li>
<li>純文字的資料處理:搜尋與取代</li>
<li>純文字的資料處理:正則表示式</li>
<li>中文資料的特有問題:編碼</li>
</ul>
<h2>結構化的資料讀取</h2>
<ul>
<li>CSV</li>
</ul>
<h2>非結構化與半結構化的資料處理</h2>
<ul>
<li>樹狀資料結構</li>
<li>XML的處理:XPath與namespace</li>
<li>網頁的抓取</li>
<li>RSelenium與現代瀏覽器的解析網頁的功能</li>
</ul>
<a href=http://homepage.ntu.edu.tw/~wush978/rdataengineer/week5.html>投影片</a>
|
第12週 |
11/29 |
<h2>非結構化與半結構化的資料處理</h2>
<ul>
<li>半結構化的資料處理
<ul>
<li>JSON</li>
</ul>
</li>
<li>半結構化的R語言物件操作
<ul>
<li>JSON vs XML vs R List</li>
<li>其他注意事項</li>
</ul>
</li>
<li>結構化的資料讀取
<ul>
<li>CSV</li>
<li>Database</li>
<li>XML Table</li>
</ul>
</li>
<li>爬蟲入門 - 以RSelenium為例</li>
<li>dplyr套件的資料處理技術</li>
</ul>
<a href=http://homepage.ntu.edu.tw/~wush978/rdataengineer/week6.html>投影片</a>
|
第13週 |
12/06 |
<h2>結構化的資料清理</h2>
<ul>
<li>dplyr套件的資料處理技術</li>
<li>wide table 與 long table的概念</li>
<li>pipeline operator</li>
</ul>
<a href=http://homepage.ntu.edu.tw/~wush978/rdataengineer/week7.html>投影片</a>
|
第14週 |
12/13 |
<h2>資料整合</h2>
<ul>
<li>dplyr套建中的各種資料整合函數</li>
<li>時間資料的處理與轉換</li>
</ul>
<a href=http://homepage.ntu.edu.tw/~wush978/rdataengineer/week8.html>投影片</a>
|
第15週 |
12/20 |
<h2>空間資料整合</h2>
<ul>
<li>R語言中與空間間相關的物件</li>
<li>三種空間型態與相關的資料整合</li>
<li>空間資料的視覺化</li>
<li>空間資料的整合</li>
</ul>
<a href=http://homepage.ntu.edu.tw/~wush978/rdataengineer/week9.html>投影片</a>
|