2/26-6/27,星期五,9:10-12:00
270813
由於各行各業越來越重視數據做為決策的依據,因此資料科學最近變得非常熱門,而在資料科學出現之前,統計學已經幫助我們描述資料以及找出變數之間的關係。學好統計學能避免被龐大的資料所困惑。不論是從事公部門或者私部門的行業,都需要培養基本的技能,才能透視資料後面的故事。
就社會科學而言,統計可以運用在許多重要的研究問題,例如:雖然這些問題不容易回答,但是學者盡力收集資料來驗證甚至發展新的理論。
本課程目的是用R
實作統計,讓修課者同時學習統計以及操作R
,未來能夠進一步延伸到其他的領域。我們假設修課的同學都沒有使用R
的經驗,所以在課程一開始,我們將使用四次上課的時間,講解R
的基本介面與功能。之後我們的上課以及作業,都會用R
來處理。
不論是統計或者資料分析,背後都需要有嚴謹的研究設計,本課程希望達到下列目標,但是也會時時提醒修課者培養看問題以及回答問題的敏銳度:
R
描述資料R
整理資料R
進行資料視覺化R
進行相關分析R
進行線性迴歸模型R
進行非線性迴歸模型R
分析加權資料R
進行實驗設計本課程主要由教師於課堂上講授並且現場操作示範,請修課者自行準備筆電上課,課後可以參考moodle上面的講義複習。
R
的語法檔給助教以驗證執行。
R
描述資料型態,並且說明變數之間可能的關係,最後以線性或者非線性迴歸模型檢證假設,但是在這個階段不一定要有非常顯著的發現。報告字數約在8000字以內,請說明每一位組員的分工。評分標準為:
週次 | 日期 | 主題 | 說明 | 參考書籍 |
---|---|---|---|---|
1 | 2/26 | 課程簡介、安裝R |
介紹本課程,以及R 的特點,以及說明如何安裝R 與RStudio ,以及安裝套件
|
蔡(Ch.1, 2) |
2 | 3/5 | 資料型態 |
將說明R 的資料型態,包括數值、字串等等,以及R 的向量、因子、列表、矩陣等等結構,以及資料框與資料表
|
蔡(Ch.3, 4, 5),Verzani(Ch. 1) |
3 | 3/12 | 資料讀取以及常用指令 | 介紹常用指令以及如何讀取外部資料 | |
4 | 3/19 | 條件判斷、迴圈 |
將解釋如何設定條件讓R 依照邏輯計算答案,以及如何設定迴圈
|
蔡(Ch.7),Verzani (Ch.6) |
5 | 3/26 | 資料視覺化 | 介紹ggplot2以及ggpubr等套件的圖形 | 課堂上投影片 |
6 | 4/2 | 停課 | 兒童節補假 | |
7 | 4/9 | 描述統計:集中趨勢、離散程度 | 介紹描述統計的集中趨勢以及離散程度,例如平均值、中位數、標準差等等 | 蔡 (Ch.7) ,Verzani (Ch.2),林與陳(Ch.3-4) |
8 | 4/16 | 統計估計、假設檢定、 平均數分析 | 點估計的意義以及信賴區間的計算 | Verzani (Ch. 8, 11),林與陳(Ch. 10, 11) |
9 | 4/23 | 相關分析、卡方檢定 | 介紹兩個非連續變數之間的關聯,以及卡方檢定 | 蔡(Ch.7),Verzani (Ch.9),林與陳(Ch.12) |
10 | 4/30 | 平均數分析、變異數檢定 | 說明連續變數與非連續變數之間的變異數分析 | Verzani (Ch. 8, 11) |
11 | 5/7 | 線性迴歸原理 | 說明線性迴歸的原理以及假設檢定 | 蔡(Ch.8, 10),Verzani (Ch.10),林與陳(Ch.9-10) |
12 | 5/14 | 單迴歸 | 說明信賴區間以及如何以圖形詮釋迴歸 | James等人(Ch. 3),林與陳(Ch. 14) |
13 | 5/21 | 複迴歸、虛擬變數、交互作用 | 說明有兩個以上的自變數時的迴歸模型,以及其中有一個是類別變數,以及兩個自變數之間有交互作用時的估計方式 | James等人(Ch. 3) |
14 | 5/28 | 最大概似法、二元勝算對數迴歸模型 | 介紹最大概似法與非線性迴歸模型應用在依變項為二元而非連續變數 | Verzani (Ch. 12),James等人 (Ch. 4) |
15 | 6/4 | 時間序列分析 | 介紹時間數列分析原理及應用 | 林與陳(Ch.16) |
16 | 6/11 | 實驗設計原理 | 介紹因果推論原理 | 課堂上投影片 |
17 | 6/18 | 實驗設計應用 | 介紹配對法 | 課堂上投影片 |
18 | 6/25 | 期末課堂報告 | 每位同學須以投影片報告即將繳交的期末報告內容 | 無 |
原則上訂在星期三中午12點到1點,研究室位於綜合院館北棟5樓。如果更動時間將通知,需要預約其他時間請email tsaich AT nccu.edu.tw。
阮柏堯(東亞所碩士生)
R
台灣資料愛好者年會在2014年提供的ETL(Extract-Transform-Load)講義,詳細說明資料萃取、轉置以便分析的過程。透過執行下列程式碼,可閱讀ETL之投影片。請參考說明。如果你用Mac系統,先執行下載套件的程式碼:
deps <- available.packages("http://taiwanrusergroup.github.io/R-2014/src/contrib")[1,"Imports"]
pkgs <- strsplit(gsub("\\s", "", deps), ",")[[1]]
for(i in seq_along(pkgs)) {
# You can change your favorite repository
if (require(pkgs[i], character.only = TRUE)) next
install.packages(pkgs[i], repo = "http://cran.csie.ntu.edu.tw")
}
install.packages('DSC2014Tutorial', repo = 'http://taiwanrusergroup.github.io/R-2014', type = 'source')
然後依序執行下列程式碼,結果會出現在瀏覽器的網頁:
library(DSC2014Tutorial)
slides("Basic") #Basics: data type, basic operations, etc.
slides("ETL1") #ETL on R
slides("ETL2") #Web scrapping
slides("DataAnalysis") #Data analysis
slides("Visualization1") #R basic visualization
slides("Visualization2") #R visualization using ggplot2
slides("Visualization3") #R markdown
以下介紹幾個線上的資源:
R
的部分在(https://stats.idre.ucla.edu/r)。在上課前請到本課程的moodle打開講義的連結。
搜尋R project就可以找到R
的網站,請找download R的連結,然後按照電腦的系統下載最新的版本。
R
本身介面並不太友善,RStudio 是一個免費的IDE,下載
R
之後請下載RStudio (http://rstudio.com)。 如果喜歡把輸出結果放在右上角,可在RStudio設定:View-->Panes-->Console on Right
請在上課前安裝一些常用的套件。有些套件包含其他的套件,所以可以省一些工作。例如輸入:
mypkg <- c('foreign','ISLR','tidyverse','Zeligverse','car','ggplot2','UsingR','lattice','nycflights13', 'stargazer','e1071',
'CTT','ggthemes','Rcolorbrewer')
install.packages(mypkg)
R
可讓使用者在R-->環境設定中,設定要讀取資料來自的資料夾,或是儲存資料之前指定工作目錄,以確定分析結果例如畫圖可以儲存到特定的資料夾。也可以用語法表示,例如:
setwd('C:/my documents/mywork')
RStudio可以建立一個計劃案,連結特定的資料夾。每次只要打開這個計劃案,就不需要記憶資料夾的路徑,資料讀取、結果儲存都會到這個計畫案所在的資料夾。請參考以下步驟:
1 假設在你的桌面開一個工作目錄叫做 class2019
2 到本課程的moodle下載壓縮檔,解壓縮,然後複製貼上資料檔到class2019
3 到RStudio-->File-->New Project-->existing director-->Browse (找到class2019)-->Create Project--Switching to project
4 資料檔應該都在RStudio右下角的視窗了,下次你開RStudio,File-->Recent projects,選擇class2019,就會看到所有相關檔案在右下角。
5 如果你打開Class2019這個Project但是不小心跳到別的資料夾,到右下角找到More-->Go To Working Directory,應該就會回到class2019
每一次進入RStudio之後,請打開想執行的計劃案,才能進入正確的路徑,否則RStudio的內建路徑是由Tools-->Global Options-->General決定。