第一堂主是R 的數據處理。主要用"tidyverse"套件包,"tidyverse"是打包了一組有著共同資料形態和'API'設計,方便一齊使用的套件。透過"tidyverse"處理這些套件的 install (core + select) 和 load (core)的工序。當晚用到的主要指令包括來自 "magritti" 的 piping operator %>%,可以將一個output當做另一個指令的1st input,這個比起要括號配對括號的寫法的確方便很多。另外,還有來自 "dplyr" 的6個指令,包括'select', 'filter', 'arrange', 'mutate', 'group_by', 'summarise' 。在dataframe的數據處理上算十分方便。還有n, top_n, tally等一起使用。之後我把這用在處理問卷資料上已比去年方便得多了。
- select: 根據給定的變數名稱選擇column
- filter: 根據設定的條件做篩選row
- arrange: 根據選定的變數內容做排列
- mutate: 根據給定的值賦予新變數,或是變更舊變數
- group_by: 根據給定變數做group,以銜接summarise
- summarise: 資料整併
這些專門處理dataframe的數據,tidyverse有一個叫lubridate的套件處理日期時間,但另一方面自己所仍要找尋xts, zoo 等財務上時間序列的處理方法。見到有另一個"tidyquant"的套件,大概之後可以一試。
"tidyverse"的介紹和教學可以到:
第2堂是統計的regression modelling。
首先是用 lm() 做的linear regression 和 categorical regression, 當然也有相關的數式、交互作用、轉換,和繪圖等。然後有用crossv_kfold將數據斬件,示範overfitting。和glmnet去對overfitting 的自變數做penalty。背後的理論大都是統計學會包括的事,不過有了R就更方便去實際運用了。我猜現在大學裡也不應該再會是教SAS/SPSS 作主流吧?
另一個更大得著,大概是看到如何用Rmd這種 R markdown檔做報告,還加裝了plotly (因而也要更新ggplot2)。開始時在按RStudio的Knit鍵製作pdf時,總是最後會出現Error,說找不到某些檔案。解決方法是按以下這篇的去安裝MacTex (我選的是小巧版的BasicTex),之後在terminal加裝缺少了的 framed
R Markdown Notes - Installing MacText 2013+ on OS X
http://dmcglinn.github.io/quant_methods/lessons/rmarkdown_notes.html
使用方面有分一般的文字、R chunk、和一些格式上的指令:
R Markdown 速查表
https://www.rstudio.com/wp-content/uploads/2015/03/rmarkdown-chinese.pdf
重要是可以透過R Markdown將R的結果,結合報告的一般段落文字,輸出成不同檔案,例如 "output: beamer_presentation: default" 輸出成當晚演示用的PDF。其他輸出可以去參考:
- HTML: "html_document"
- PDF: "pdf_document_format"
- MS Word: "word_document"
- Beamer: "beamer_presentation"
- HTML5 Slide: "ioslides_presentation"
R Markdown
http://rmarkdown.rstudio.com/
沒有留言:
張貼留言