R 統計軟體 - 安裝與使用 2008/02/22 林柏伸
R 統計軟體 <ul><li>R 是什麼 ,  為什麼要用R? </li></ul><ul><li>安裝與設定 </li></ul><ul><li>基本操作 </li></ul><ul><li>安裝套件 package </li></ul><u...
R 是什麼 <ul><li>R  系統是由  Ross Ihaka  與  Robert Gentleman  從  S  語言所發展出來 ,  主要是為了統計分析與繪圖 </li></ul><ul><li>S  語言早在  1980  年代末...
R 是什麼 <ul><li>R 是一個開放原始碼  (open-source, GNU General Public License) 的統計分析軟體 </li></ul><ul><li>R 跟 S 都是以物件導向為主的程式語言 </li></...
為什麼要用R ? <ul><li>R  與  S-plus  語法大多相近 , 但是  R  是開放原始碼  (open-source, GNU General Public License)( 免費 , 自由軟體 ),  目前由一群跨國際的志...
為什麼要用R ? <ul><li>R  是科學家寫出來的軟體 , 而且被科學家所使用 </li></ul><ul><li>可以在不同平台上執行  Windows, Mac, Unix, Linux, ... </li></ul><ul><li>...
為什麼要用R ? <ul><li>有很棒的線上說明及文件可以參考 </li></ul><ul><li>還有郵件論壇可以發問 (mailing list) </li></ul><ul><li>很棒的社群 ( 一堆統計專家 ?) – friendl...
安裝與設定 <ul><li>下載 R http://www.r-project.org </li></ul><ul><li>下載 Tinn-R http://www.sciviews.org/Tinn-R/ </li></ul><ul><li>...
http://www.r-project.org/
Taiwan mirror
選擇 Windows
請選 base contrib 是套件庫
R-2.6.2-win32.exe
安裝  R R-2.6.2-win32.exe
安裝的檔案夾位置 GNU 版權聲明
建立開始功能表單 安裝的內容 ,  完整安裝 建立捷徑與快速啟動
安裝中…… 安裝完成 !!
 
安裝 Tinn-R Tinn-R_1.19.4.7_setup.exe
GNU 版權聲明
安裝的檔案夾位置 建立開始功能表單
檔案關聯性設定
安裝中…… 安裝完成 ! 並啟動 Tinn-R
呼叫 R 介面
 
可以開始用 R 寫程式啦 !!
基本操作 <ul><li>help.start()  線上說明 </li></ul><ul><li>help(mean)  指令說明 ?mean </li></ul><ul><li>example(plot)  範例展示 </li></ul><...
變數的分類 <ul><li>&quot;numeric&quot;,  實數向量 </li></ul><ul><li>&quot;integer&quot;,  整數向量  ( 有時需特別指定 ) </li></ul><ul><li>&quot...
R 的物件類別 <ul><li>Vector </li></ul><ul><li>Matrix ( 二維 ) </li></ul><ul><li>Array </li></ul><ul><li>List </li></ul><ul><li>Da...
R 當計算機
 
 
設定工作目錄 <ul><li>getwd()  檢視目前的工作目錄 </li></ul><ul><li>#  先開好資料夾  C:Rwork </li></ul><ul><li>> setwd(&quot;C://Rwork &quot;) <...
很多的 pdf 說明文件 (in English…) Html 的說明文件 (in English…) 不知道指令的參數該怎麼下的時候 help() ?
安裝套件 package <ul><li>install.packages() </li></ul><ul><li>使用 GUI 選單 </li></ul>
選擇程式套件
安裝程式套件
選擇安裝的鏡射站  (Taiwan)
選擇欲安裝的套件 按著 Ctrl 可以多重選取
完成套件的安裝
推薦安裝套件 <ul><li>Cairo   輸出圖檔的套件 </li></ul><ul><li>CircStats   可以畫玫瑰圖的套件 </li></ul><ul><li>circular </li></ul><ul><li>DBI  R...
載入套件 packages <ul><li>library() </li></ul><ul><li>使用 GUI 工具載入套件 </li></ul>
修正R MySQL 的安裝 <ul><li>直接安裝 RMySQL 套件後 , 在欲使用此 package 會發生錯誤訊息 library(RMySQL) </li></ul><ul><li>要去下載兩個 dll 檔放到 RMySQL 安裝的路...
複製兩個 dll 檔 libMySQL.dll libmysql.lib 貼到RM ySQL 的安裝目錄下 C:Program FilesRR-2.6.2libraryRMySQLlibs
如何連線到資料庫系統 <ul><li>library(RMySQL) </li></ul><ul><li># open the connection using user, passsword, etc., as </li></ul><ul><...
繪製地圖 <ul><li>需要的 package : maps, maptools, mapdata </li></ul><ul><li>library(maps,maptools,mapdata) data(worldHiresMapEnv)...
從資料庫取得資料 <ul><li># Run an   SQL  statement and extract its output in pieces (returns a result set): </li></ul><ul><li>#  傳...
從資料庫取得資料 <ul><li># Run an arbitrary SQL statement and extract all its output (returns a data.frame): </li></ul><ul><li>#  ...
查看資料庫連線狀態 <ul><li># Get meta-information on a connection (thread-id, etc.): </li></ul><ul><li>#  取得連線狀態的資料  </li></ul><ul>...
中斷連線 <ul><li>dbDisconnect(con) </li></ul><ul><li>dbDisconnect(con2) </li></ul>
Demo <ul><li>demo() </li></ul><ul><li>demo(package = .packages(all.available = TRUE)) </li></ul><ul><li>demo(Japanese) </l...
Demo <ul><li>library(tcltk) </li></ul><ul><ul><li>demo(tkcanvas) </li></ul></ul><ul><ul><li>demo(tkdensity) </li></ul></ul...
R 的相關網站 <ul><li>R 官方網站:  http://www.r-project.org </li></ul><ul><li>R 繪圖: </li></ul><ul><ul><li>http://addictedtor.free.fr...
Upcoming SlideShare
Loading in...5
×

R統計軟體簡介

36,779

Published on

R統計軟體的簡介與安裝過程說明
Edit by Personlin
(Original from Dr. Chien-Fu Jeff Lin)

2 Comments
8 Likes
Statistics
Notes
  • 有許多免費教學資源
    https://sites.google.com/site/zhonghuarruantixuehui/home/learn
    R軟體的問題討論論壇
    http://groups.google.com/group/taiwanruser
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • 謝謝分享!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
36,779
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
353
Comments
2
Likes
8
Embeds 0
No embeds

No notes for slide

R統計軟體簡介

  1. 1. R 統計軟體 - 安裝與使用 2008/02/22 林柏伸
  2. 2. R 統計軟體 <ul><li>R 是什麼 , 為什麼要用R? </li></ul><ul><li>安裝與設定 </li></ul><ul><li>基本操作 </li></ul><ul><li>安裝套件 package </li></ul><ul><li>資料庫連線設定 </li></ul><ul><li>基本繪圖 </li></ul><ul><li>Demo </li></ul>
  3. 3. R 是什麼 <ul><li>R 系統是由 Ross Ihaka 與 Robert Gentleman 從 S 語言所發展出來 , 主要是為了統計分析與繪圖 </li></ul><ul><li>S 語言早在 1980 年代末期 , 由 AT&T 實驗室 ,Rick Becker, John Chambers, 與 Allan Wilks 發展用來進行統計分析與作圖 </li></ul><ul><li>Insightful 公司將 S 商品化 , 並加入許多方便的操作介面 , 稱為 S-plus </li></ul><ul><li>R 可視為統計數學軟體 , 也是一種程式語言 </li></ul>
  4. 4. R 是什麼 <ul><li>R 是一個開放原始碼 (open-source, GNU General Public License) 的統計分析軟體 </li></ul><ul><li>R 跟 S 都是以物件導向為主的程式語言 </li></ul><ul><li>R 的網站 http://www.r-project.org ( 在 Google 搜尋 R 就可以找到 ) </li></ul><ul><li>R 最新版本為 2.6.2 </li></ul>
  5. 5. 為什麼要用R ? <ul><li>R 與 S-plus 語法大多相近 , 但是 R 是開放原始碼 (open-source, GNU General Public License)( 免費 , 自由軟體 ), 目前由一群跨國際的志工人員組成的 R 核心發展組織 (R core-development team) 所維持 , 運作與持續更新 . </li></ul><ul><li>R 與 S 都是以物件導向為主的程式語言 , 透過交互作用方式很容易地進行統計分析與繪圖 , 這與 SAS, SPSS 的方式有所不同 </li></ul>
  6. 6. 為什麼要用R ? <ul><li>R 是科學家寫出來的軟體 , 而且被科學家所使用 </li></ul><ul><li>可以在不同平台上執行 Windows, Mac, Unix, Linux, ... </li></ul><ul><li>簡單安裝 </li></ul><ul><li>R 是免錢的! </li></ul><ul><li>有數百個擴充套件 (packages) 可以安裝 </li></ul><ul><li>有許多文章的發表都順帶包含了R的套件 </li></ul>
  7. 7. 為什麼要用R ? <ul><li>有很棒的線上說明及文件可以參考 </li></ul><ul><li>還有郵件論壇可以發問 (mailing list) </li></ul><ul><li>很棒的社群 ( 一堆統計專家 ?) – friendly and helpful people... </li></ul><ul><li>很容易可以呼叫其他語言的函式庫 Fortran, C, Java, ... libraries </li></ul>
  8. 8. 安裝與設定 <ul><li>下載 R http://www.r-project.org </li></ul><ul><li>下載 Tinn-R http://www.sciviews.org/Tinn-R/ </li></ul><ul><li>安裝 R </li></ul><ul><li>安裝 R 套件 install_packages.r </li></ul><ul><li>修正 RMySQL 套件的安裝 </li></ul><ul><li>安裝 Tinn-R </li></ul><ul><li>在 Tinn-R 設定 R 啟動參數, Options->Main->Application->R->Rgui(parameter and path) </li></ul>
  9. 9. http://www.r-project.org/
  10. 10. Taiwan mirror
  11. 11. 選擇 Windows
  12. 12. 請選 base contrib 是套件庫
  13. 13. R-2.6.2-win32.exe
  14. 14. 安裝 R R-2.6.2-win32.exe
  15. 15. 安裝的檔案夾位置 GNU 版權聲明
  16. 16. 建立開始功能表單 安裝的內容 , 完整安裝 建立捷徑與快速啟動
  17. 17. 安裝中…… 安裝完成 !!
  18. 19. 安裝 Tinn-R Tinn-R_1.19.4.7_setup.exe
  19. 20. GNU 版權聲明
  20. 21. 安裝的檔案夾位置 建立開始功能表單
  21. 22. 檔案關聯性設定
  22. 23. 安裝中…… 安裝完成 ! 並啟動 Tinn-R
  23. 24. 呼叫 R 介面
  24. 26. 可以開始用 R 寫程式啦 !!
  25. 27. 基本操作 <ul><li>help.start() 線上說明 </li></ul><ul><li>help(mean) 指令說明 ?mean </li></ul><ul><li>example(plot) 範例展示 </li></ul><ul><li>data() 顯示目前可用的資料 </li></ul><ul><li>objects(), ls() 顯示目前所有的物件 </li></ul><ul><li>rm() 移除物件 </li></ul><ul><li>注意!!R會區分大小寫不同!! </li></ul>
  26. 28. 變數的分類 <ul><li>&quot;numeric&quot;, 實數向量 </li></ul><ul><li>&quot;integer&quot;, 整數向量 ( 有時需特別指定 ) </li></ul><ul><li>&quot;logical&quot;, 邏輯變數向量 (true or false), 以 TRUE (T) 或 FALSE (F) 呈現 ,( 也可以是 1 (T) 與 0 (F). </li></ul><ul><li>&quot;complex&quot;, 複數向量 </li></ul><ul><li>&quot;character&quot;, 文字或字串向量 , 通常輸入時 , 在文字或字串兩側加上雙引號 . </li></ul><ul><li>&quot;list&quot;, 列表 , 是一個由 R (S) 物件所組成的向量 </li></ul>
  27. 29. R 的物件類別 <ul><li>Vector </li></ul><ul><li>Matrix ( 二維 ) </li></ul><ul><li>Array </li></ul><ul><li>List </li></ul><ul><li>Data Frame </li></ul><ul><li>Function </li></ul>
  28. 30. R 當計算機
  29. 33. 設定工作目錄 <ul><li>getwd() 檢視目前的工作目錄 </li></ul><ul><li># 先開好資料夾 C:Rwork </li></ul><ul><li>> setwd(&quot;C://Rwork &quot;) </li></ul><ul><li># set new working directory </li></ul>
  30. 34. 很多的 pdf 說明文件 (in English…) Html 的說明文件 (in English…) 不知道指令的參數該怎麼下的時候 help() ?
  31. 35. 安裝套件 package <ul><li>install.packages() </li></ul><ul><li>使用 GUI 選單 </li></ul>
  32. 36. 選擇程式套件
  33. 37. 安裝程式套件
  34. 38. 選擇安裝的鏡射站 (Taiwan)
  35. 39. 選擇欲安裝的套件 按著 Ctrl 可以多重選取
  36. 40. 完成套件的安裝
  37. 41. 推薦安裝套件 <ul><li>Cairo 輸出圖檔的套件 </li></ul><ul><li>CircStats 可以畫玫瑰圖的套件 </li></ul><ul><li>circular </li></ul><ul><li>DBI RMySQL 需要 </li></ul><ul><li>mapdata 地圖資料含高解析 world map </li></ul><ul><li>mapproj 投影 </li></ul><ul><li>maps 繪製地圖的套件 </li></ul><ul><li>maptools Tools for reading and handling spatial objects </li></ul><ul><li>nlme non-linear mixed effect </li></ul><ul><li>RMySQL 跟 MySQL 溝通的套件 </li></ul><ul><li>RSQLite 跟 SQLite 溝通的介面 </li></ul><ul><li>Rwave Time-Frequency analysis of 1-D signals </li></ul><ul><li>seewave Time wave analysis and graphical representation </li></ul><ul><li>sgeostat 地質統計套件 </li></ul><ul><li>shapefiles 讀寫 Shapefile </li></ul><ul><li>signal 訊號處理 </li></ul><ul><li>spgrass6 讀寫 GRASS 的檔案 </li></ul><ul><li>timsac 時間序列分析 </li></ul>
  38. 42. 載入套件 packages <ul><li>library() </li></ul><ul><li>使用 GUI 工具載入套件 </li></ul>
  39. 43. 修正R MySQL 的安裝 <ul><li>直接安裝 RMySQL 套件後 , 在欲使用此 package 會發生錯誤訊息 library(RMySQL) </li></ul><ul><li>要去下載兩個 dll 檔放到 RMySQL 安裝的路徑下 , 才可以正常載入 </li></ul>
  40. 44. 複製兩個 dll 檔 libMySQL.dll libmysql.lib 貼到RM ySQL 的安裝目錄下 C:Program FilesRR-2.6.2libraryRMySQLlibs
  41. 45. 如何連線到資料庫系統 <ul><li>library(RMySQL) </li></ul><ul><li># open the connection using user, passsword, etc., as </li></ul><ul><li># 開啟 MySQL 連線 ( 寫法一 ) </li></ul><ul><li>drv <- dbDriver(&quot;MySQL&quot;) </li></ul><ul><li>con <- dbConnect(drv, group = &quot;rs-dbi&quot;, host=“your host ip&quot;, username=“your user name&quot;, password=“your password&quot;, dbname=&quot;NGA&quot;) </li></ul><ul><li># 開啟 MySQL 連線 ( 寫法二 ) </li></ul><ul><li>con2 <- dbConnect(MySQL(), user=&quot; your user name &quot;, password=&quot; your password &quot;, dbname=&quot;NGA&quot;, host=&quot; your host ip &quot;) </li></ul>
  42. 46. 繪製地圖 <ul><li>需要的 package : maps, maptools, mapdata </li></ul><ul><li>library(maps,maptools,mapdata) data(worldHiresMapEnv) <- 載入高解析地圖資料 map(&quot;worldHires&quot;, xlim=c(118, 123), ylim=c(21, 26)) <- 繪製台灣地區地圖 map(&quot;world&quot;, xlim=c(118, 123), ylim=c(21, 26)) <- 低解析度 </li></ul>
  43. 47. 從資料庫取得資料 <ul><li># Run an SQL statement and extract its output in pieces (returns a result set): </li></ul><ul><li># 傳送查詢 ( 寫法一 ) </li></ul><ul><li>rs <- dbSendQuery(con, statement = paste( </li></ul><ul><li>&quot;SELECT EQ_ID,NAME&quot;, </li></ul><ul><li>&quot;FROM EQ&quot;, </li></ul><ul><li>&quot;WHERE MAG > 7&quot; </li></ul><ul><li>)) </li></ul><ul><li>data <- fetch(rs, n = -1) # extract all rows </li></ul><ul><li>data </li></ul><ul><li>dim(data) </li></ul><ul><li>names(data) </li></ul>
  44. 48. 從資料庫取得資料 <ul><li># Run an arbitrary SQL statement and extract all its output (returns a data.frame): </li></ul><ul><li># 傳送查詢 ( 寫法二 ) </li></ul><ul><li>ID.EQ <- dbGetQuery(con2, &quot;SELECT EQ_ID,NAME FROM EQ&quot;) </li></ul><ul><li>ID.STATION <- dbGetQuery(con2, &quot;SELECT STATION_ID,Name FROM STATION&quot;) </li></ul><ul><li>ID.SGM <- dbGetQuery(con2, &quot;SELECT SGM_ID,EQ_ID,STATION_ID FROM SGM&quot;) </li></ul><ul><li>ID.SGM_Meta <- dbGetQuery(con2, &quot;SELECT SGM_ID FROM SGM_Meta&quot;) </li></ul>
  45. 49. 查看資料庫連線狀態 <ul><li># Get meta-information on a connection (thread-id, etc.): </li></ul><ul><li># 取得連線狀態的資料 </li></ul><ul><li>summary(MySQL(), verbose = TRUE) </li></ul><ul><li>summary(con, verbose = TRUE) </li></ul><ul><li>summary(rs, verbose = TRUE) </li></ul><ul><li>dbListConnections(MySQL()) </li></ul><ul><li>dbListResultSets(con) </li></ul><ul><li>dbHasCompleted(rs) </li></ul>
  46. 50. 中斷連線 <ul><li>dbDisconnect(con) </li></ul><ul><li>dbDisconnect(con2) </li></ul>
  47. 51. Demo <ul><li>demo() </li></ul><ul><li>demo(package = .packages(all.available = TRUE)) </li></ul><ul><li>demo(Japanese) </li></ul><ul><li>demo(graphics) </li></ul><ul><li>demo(image) </li></ul><ul><li>demo(plotmath) </li></ul>
  48. 52. Demo <ul><li>library(tcltk) </li></ul><ul><ul><li>demo(tkcanvas) </li></ul></ul><ul><ul><li>demo(tkdensity) </li></ul></ul><ul><li>library(rgl) </li></ul><ul><ul><li>demo(rgl) </li></ul></ul><ul><li>library(seewave) </li></ul><ul><ul><li>demo(seewave) </li></ul></ul>
  49. 53. R 的相關網站 <ul><li>R 官方網站: http://www.r-project.org </li></ul><ul><li>R 繪圖: </li></ul><ul><ul><li>http://addictedtor.free.fr/graphiques/ </li></ul></ul><ul><ul><li>http://cged.genes.nig.ac.jp/RGM2/index.php?clear=all </li></ul></ul><ul><li>中文教學網站: </li></ul><ul><ul><li>台北大學林建甫老師 http://web.ntpu.edu.tw/~cflin/Teach/R/Rproj.htm </li></ul></ul><ul><ul><li>中山大學劉正山老師 http://www2.nsysu.edu.tw/politics/liu/main/ResearchTools/appliedStatistics.htm </li></ul></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×