注意事項

下載題目卷

考試期間

  • 請按照平時上課之座位入座。
  • 可參考課本、上課講義(包含電子檔)及其它資料,但不能與別人討論。
  • 可使用計算機、自己的筆記型電腦、平板電腦及手機。
  • 全程可上網查詢,但不能用通訊軟體(例如: FB/LINE/IG)討論, 也不可抄襲網路上之程式碼。
  • 不按照規定作答者,酌量扣分。
  • 有問題者,請舉手發問。勿與同學交談。

答題檔案原則

  • 若程式碼直接複製(或照抄)講義上的以不給分為原則。
  • 程式直接寫在本Rmd檔。需印出程式碼及執行結果。
  • 畫出圖形,請注意大小,內容數字文字需調整至可辨識,數字/標記不可重疊。
  • 作答檔案,請隨時存檔並備份,勿直接存於公用電腦(例如: 桌面)。

上傳答題檔案

  • 於教師網站首頁登入[作業考試上傳區],帳號: hdda109。密碼: xxx
  • 選取上傳資料夾: 「20201111-Midterm」。
  • 請上傳「學號-姓名-HDDA-MidtermExam.Rmd」和「學號-姓名-HDDA-MidtermExam.html」。
  • 若上傳檔案格式錯誤,內容亂碼,空檔等等問題。請自行負責。
  • 若要重覆上傳(第2次以上),請在檔名最後加「\(-2\)」、「\(-3\)」,例如: 「{
  • 上傳兩次(含)以上 、格式不合等等酌量扣分。
  • 如果上傳網站出現「You can modify the html file, but please keep the link ‘www.wftpserver.com’ at least.」,請將滑鼠移至「網址列」後,按「Enter」即可。若再不行,請換其它瀏覽器(IE/Edge/Firefox/Chrome)。
  • 有問題者,請FB私訊老師。

完成考試

  • 上傳完畢,確認無誤,將公共電腦關機,即可離席。




1 R程式設計及ggplot2

若隨機變數\(X\)服從Weibull分配(簡記為\(X\sim Weib(\alpha, \beta)\)),其機率密度函數為 \[ f(x|\alpha, \beta)=\alpha\beta^{-\alpha}x^{\alpha-1}e^{-(x/\beta)^\alpha},\quad x>0. \]

1.1 Weibull機率密度函數

x <- seq(0, 5, 0.1),寫一R函式計算Weibull機率密度函數, 預設值為\(\alpha=1\), \(\beta=2\)

# your source code here

1.2 以ggplot2畫出函數圖

若以graphics {base}畫出\(X\sim Weib(\alpha, \beta=2)\)之圖形如下, 現請你改用ggplot2畫出。

# your source code here

2 「癌症發生統計」之資料摘要

資料來源: 政府資料開放平台。資料檔: 「File_15197.csv」。 https://data.gov.tw/dataset/6399

2.1 讀取資料

讀取資料,印出資料前後各10筆紀錄。

# your source code here

2.2 長條圖

以ggplot2,畫出台北市「癌症別: 肺、支氣管及氣管」歷年「癌症發生數」之長條圖。

# your source code here

2.3 統計癌症發生總數

依「縣市別」及「性別(不分性別、男。女)」之分類,癌症發生總數各是多少人?

# your source code here

2.4 列出癌症發生總數最高之前5名

依「性別(不分性別、男。女)」,列出癌症發生總數最高之前5名的癌症別及其總數。 (例: 男性之下,各癌症別發生總數 = 加總所有「癌症診斷年」及「縣市別」之下的各癌症別發生數 )

# your source code here

3 遺失值處理

以下為模擬具有遺失值資料xR程式碼:

n <- 1000
p <- 10
set.seed(123456)
library(MASS)
s <- matrix(rt(p*p, df=5), ncol = p)
sigma <- crossprod(s)
x <- mvrnorm(n, mu=rep(0, p), Sigma=sigma)
missing.percentage <- 0.1
x[sample(n*p, floor(n*p*missing.percentage))] <- NA

3.1 Aggregation plot

畫出此資料的Aggregation plot。

# your source code here

3.2 選取完整之資料

選取完整之資料(命名為x.complete), 印出此資料之維度(nc\(\times\)pc)。

# your source code here

3.3 模擬遺失資料

將上述之資料隨機選取出比例為missing.percentage之觀察值(\(\xi_i\)),設置成 NA(命名為x.complete.na)。 提示:

set.seed(54321) 
ij <- sample(1:(nc*pc), floor(nc*pc*missing.percentage))
# your source code here

3.4 補值方法

利用下列4方法各自對上述資料(x.complete.na)做補值: Mean Substitution, K-Nearest Neighbour Imputation (K=5), mice.impute.pmm {MICE}, mice.impute.norm {MICE}。

# your source code here

3.5 評估指標

計算下列指標數值,評估上述5種補值方法: \[ \sum_{i=1}^{m} (\hat{\xi_i}-\xi_i)^2, \] 其中m <- floor(nc*pc*missing.percentage)\(\xi_i\)為模擬遺失之真實值,\(\hat{\xi_i}\)\(\xi_i\)之補值。 \end{enumerate}

# your source code here