今年Taiwan R User Group很高興能夠在資料科學愛好者年會上舉辦資料分析上手課程。感謝主辦單位的規劃,把整個教學過程的錄影下來,讓我們社群能夠於事後建立一個線上學習資源,讓當時沒機會參加的朋友們,可以在事後一起重新學習。 這裡我們將當時使用的教材和錄影整理下來,讓想線上學習的朋友,可以在比較舒服的方式來上手R語言。請使用者們依照下面的順序一步一步的來建立R 的學習環境,以有良好的學習體驗。 觀看影片時,請初學者務必不要貪快,跟著投影片和影片,一步步的重現投影片中的R 的程式碼。影片中有講師們講解程式碼的原理,投影片則方便大家可以直接複製貼上程式碼。重現範例程式碼,以及理解運作的原理,就是學習一個程式語言最好的方法。
取得幫助的方法
由於我們沒有人力建立長期回應問題的平台,所以歡迎所有在操作以下手續的使用者,以及在學習中遇到任何問題的使用者,請到 https://github.com/TaiwanRUserGroup/DSC2014Tutorial/issues 發問(需要註冊github帳號)。於R以及其套件更新快速,所以很您可能現在的操作過程會發生問題,這很可能不是您的錯,但是我們也沒有人力長期檢測以下的步驟是否可以順利完成。請大家抱持的幫助未來的使用者的心態,不吝於在上述連結中向我們報告錯誤。您的回報可以讓未來其他使用者更方便的,也是對這個開放教材很大的貢獻。 另外以下也列出當你遇到其他R 的問題時,可以找到幫助的頻道:
- ptt R_Language版
- 中華R軟體學會的討論區 https://groups.google.com/forum/#!forum/taiwanruser
- 週一晚上至政大公企中心舉辦的 MLDM Monday 找我們的 Officer 求救。(活動資訊: http://www.meetup.com/Taiwan-R)
- Taiwan R User Group 的 mailing list。請在加入 meetup 中的社群之後寫信至 Taiwan-useR-Group-list@meetup.com
建立學習環境
初學使用者請依照以下列出的文件,安裝 R 3.1.2 版本或更新的版本。
安裝R 3.1以上版本
Windows
請至 CRAN 上下載 R3.1 以上的安裝程式。
備註:影片中的範例是 3.0.2 的版本,請使用者記得安裝 3.1 以上的版本喔!
Mac
請至 CRAN 上下載 R3.1 以上的安裝程式。
備註:此影片由中華R軟體學會的李明昌老師提供
Ubuntu
Ubuntu 14.04 的使用者可以在 bash 執行以下指令來安裝學習環境:
sudo sh -c 'echo "deb http://cran.csie.ntu.edu.tw/bin/linux/ubuntu trusty/" >> /etc/apt/sources.list'
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9
sudo apt-get update && apt-get install -y r-base libcurl4-openssl-dev libxml2-dev espeak
如果是其他版本的使用者,請修改上述 trusty 的部份。
Docker
我們也提供 Docker Image 讓熟悉 Docker 的工程師可以快速開始上手。(目前還沒有使用者利用docker來學習,所以如果你有成功或是失敗的經驗,都歡迎你回應)
- 安裝docker
- 輸入以下指令:( Mac 使用者請先跳到下面的 備註) docker run -p 8787:8787 --name twdsc2014tutorial -d wush978/twdsc2014tutorial
- 打開瀏覽器,在網址上輸入
http://localhost:8787
,帳號/密碼均以guest輸入後即可登入rstudio server。 - 跳過安裝套件的步驟,直接開始學習。
備註: 因為 Docker 預設使用者是在 Linux 環境下操作,在 Mac 中操作 Docker 需要一層 Virtual Machine 作為中介,所以上述操作並無法把 8787 port 穿出來給 localhost 的 8787 port ( 事實上,上述操作是把 Docker 的 8787 port 穿出來給了 Virtual Machine 的 8787 port )。因此,如果想要把 Docker 的 port 在 Mac 裡穿出來使用,需要額外的設定。詳細的方法可以參考這裡 。這個方法是使用 Docker 官方提供的 boot2docker 作為 VM 層,方法節錄如下:
- 安裝 boot2docker 後,於 command line 輸入
boot2docker init
,此項操作僅需於安裝之初執行一次即可,所以如果本來就有boot2docker
並有使用過的人可以跳過這一步。 - 執行
boot2docker up
。如果有看到export DOCKER_HOST=......
之類的訊息 (.....
因人而異,請自行替換 ),於 command line 執行echo export DOCKER_HOST=...... >> ~/.bash_profile
。 - 執行
boot2docker ip
,將會看到類似以下訊息:The VM's Host only interface IP address is: ***.***.**.***
***
因人而異,請自行替換。 - 編輯
/etc/hosts
並在最後一行加上:dockerhost ***.***.**.***
,***
是你剛剛你用boot2docker ip
所顯示的 ip 位址。 - 執行有關
docker run ...
的指令,在網址欄改為輸入http://dockerhost:8787
連線,就可以繼續下面的操作。
安裝教學用套件
由於安裝教學用套件時,會一次安裝影片中需要用到的套件,所以請大家在安裝時稍候。
Windows
請打開R 後,執行下列指令。
install.packages('DSC2014Tutorial', repo = c('http://taiwanrusergroup.github.io/R', "http://cran.csie.ntu.edu.tw"), type = 'win.binary')
Ubuntu
Ubuntu 請先安裝以下Ubuntu套件:
sudo apt-get install libcurl4-openssl-dev libxml2-dev espeak
再在R底下執行
install.packages('DSC2014Tutorial', repo = c('http://taiwanrusergroup.github.io/R', "http://cran.csie.ntu.edu.tw"), type = 'source')
Mac
請Mac User在R中執行以下指令:
deps <- available.packages("http://taiwanrusergroup.github.io/R/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', type = 'source')
課程影片與教材
Basic
講師: Dboy
影片:
套件內部投影片:
slides("Basic")
線上投影片:
ETL 1
講師: Aha
影片:
套件內部投影片:
slides("ETL1")
線上投影片:
http://ntuaha.github.io/R_ETL_LAB/
ETL 2
講師:Jiawei
影片:
套件內部投影片:
slides("ETL2")
線上投影片:
http://ntuaha.github.io/R_ETL_JIAWEI/
Data Analysis
講師:George & Johnson
影片:
套件內部投影片:
slides("DataAnalysis")
線上投影片:
http://whizzalan.github.io/R-tutorial_DataAnalysis
Visualization 1
講師:Ben
影片:
套件內部投影片:
slides("Visualization1")
線上投影片:
http://kuiming.github.io/graphics/index.html
Visualization 2
講師:Kyle Chung
影片:
套件內部投影片:
slides("Visualization2")
線上投影片:
http://everdark.github.io/lecture_ggplot/lecture_ggplot2/index.html
Visualization 3
講師:Mansun
影片:
套件內部投影片:
slides("Visualization3")
線上投影片:
http://rpubs.com/mansun_kuo/24330
下一步?
繼續學習之路
很歡迎初學者繼續跟著以下的線上學習資源,繼續學習:
- https://www.youtube.com/user/TWuseRGroup 觀看我們分享過的各種專題,針對您的領域再作學習。
- https://sites.google.com/site/zhonghuarruantixuehui/movielist 中華 R 軟體學會的相關教學影片
- Coursera 上 R 的入門課程。另外 Johns Hopkins University 也有在 Coursera 上開了系列課程,完整的列表請點這裡。這些課程無需付費也可參加,是很好的線上學習資源。
- R datacamp https://www.datacamp.com/ 類似 codecademy 的教學網站,適合初初初初學者。有些和網站 API 有關的題目可能因為過期壞掉,可以直接看解答。
回饋給我們,讓我們更好的幫助未來的初學者
請各位跑玩自學流程的朋友,如果在過程中有什麼建議、指教或是單純想要謝謝社群的朋友們,可以私下寫信給我們: https://www.facebook.com/Tw.R.User 。您的回饋一定會默默的幫助未來的初學者!
將後續學到的知識回饋給社群,並透過分享來學習
我們也期待從今天開始的未來,如果您有什麼收穫,一定要再回來社群分享。所有來過社群分享的朋友都說,分享的人,才是學習到更多的人。讓大家能一直持續的幫助後進,才是社群可以一直走下去的關鍵。