第一章 R簡單介紹git
本章概要web
1安裝R編程
2理解R語言數組
3執行R程序函數
本章所介紹的內容歸納例如如下。工具
一個典型的數據分析步驟如圖1所看到的。post
圖1:典型數據分析步驟學習
簡而言之,現今的數據分析要求咱們從多種數據源中獲取數據、數據合併、標註、清洗和分析。並且把分析的結果進行展現,造成報告或者系統。輔助決策。R能夠知足現今數據分析的要求。大數據
爲何用R?spa
R是一個適合統計分析和畫圖的環境與語言。它是開源、免費的。得到世界範圍社區支持。
統計分析和畫圖工具已經很是多了。好比:SPSS。SAS。Excel,Stata和Minitab等。爲何還要用R呢?R的諸多特性,可以回答這個問題。
1)R是免費的,大多數統計工具都是商業化的,即要花錢。
2)R是一個功能強大全面的統計分析平臺。一個典型的數據分析過程都可以用R來完畢。
3)R具備強大的畫圖能力。
4)R是一個能夠進行交互式數據分析和探索的平臺。
5)R是一個以easy且直觀的方式編寫統計方法的無與倫比的平臺。
6)R實現了很是多高級統計方法。
7)R可以在多個系統上執行。
8)R對於不想編程的人,提供GUI,實現R所能作的事情。
得到和安裝R
從網址http://cran.r-project.org得到R安裝程序。
R工做
R是一個有大寫和小寫之分的解釋型語言。你可以在命令提示符(>)每次輸入一條命令或者在一個源文件裏寫好所有命令集。
R的賦值符號是」<-「。
> x <- rnorm(5) # 向量x包括5個服從標準正態分佈的隨機數
R在Windows系統的GUI如圖2所看到的。
圖2:Windows系統下GUI
R實例一,數據集爲10個嬰兒年齡(單位:月)和體重(單位:千克)。
程序清單例如如下:
> Age <- c(1, 3, 5, 2, 11, 9, 3, 9, 12, 3)
> Weight <- c(4.4, 5.3, 7.2, 5.2, 8.5, 7.3, 6.0, 10.4, 10.2, 6.1)
> mean(Weight)
[1] 7.06
> sd(Weight)
[1] 2.077498
> cor(Age, Weight)
[1] 0.9075655
> plot(Age, Weight)
關於Age與Weight的散點圖如圖3所看到的。
圖3:10個嬰兒的Age-Weight散點圖
退出界面,運行例如如下函數。
> q()
R幫助系統很是強大,經過幫助可以得到R中已安裝包的函數的細節、參考和實例。R 中得到幫助的方法。
方法一:help.start()
方法二:help("foo")或者?foo
方法三:help.search("foo")或者??foo
方法四:example("foo")
方法五:RSiteSearch("foo")
方法六:apropos("foo",mode="function")
方法七:data()
方法八:vignette()
方法九:vignette("foo")
R 工做空間是R當前工做環境和用戶定義的所有對象。
(向量、列表、數組、矩陣、數據框 和函數等)
管理R空間的一些函數。
函數一:getwd()
函數二:setwd("mydirectory")
函數三:list()
函數四:rm(objectname)
函數五:help(options)
函數六:options()
函數七:history(#)
函數八:savehistory("myfile")
函數九:loadhistory("myfile")
函數十:save.image("myfile")
函數十一:load("myfile")
函數十二:save(objectlist, file="myfile")
R實例二,數據集20個服從標準均勻分佈的隨機數
> setwd("E://myproject")
>options()
>options(digits=3)
>x <- runif(20)
>summary(x)
>hist(x)
>savehistory(x)
>save.image()
>q()
R腳本輸入方法,即source("myscript.R")
文本輸出方法。即sink("myfilename")
圖形輸出方法,即pdf("xxx.pdf")或者png("xxx.png")或者jpeg("xxx.jpg")或者bmp("xxx.bmp")等。
R包
R功能之因此強大,緣由之中的一個就是具備許多的功能擴展包。R包下載地址例如如下:
http://cran.r-project.org/web/packages/
爲何要用R包。
R包是R函數、數據,可編譯代碼的聚合。
.libPaths() #顯示包安裝路徑
library() # 查看已安裝的包
search() #告知那些包已裝載和可以使用
R軟件安裝完成後,自帶包(標準包)有base。datasets,utils。grDevices。graphics。stats和methods。
安裝包方法,即 install.packages("packagename")
更新包方法。即update.packages()
瞭解已安裝包的具體信息方法,即installed.packages()
載入包(前提是該包已經安裝)的方法,即library("packagename")
對新安裝包的學習和認知方法,即help(package="packagename")
批處理
適合反覆性工做
形式:R CMD BATCH options infile outfile
結果重用
f分析的結果可以保存。並做爲下一次的輸入。
R實例三。數據集R自帶的mtcars。
程序清單:
>lmfit <- lm(mpg ~ wt, data=mtcars)
>summary(lmfit)
>plot(lmfit)
>predict(lmfit, mynewdata)
對待大數據集
R所處理的一切都視爲對象代之,並且是把對象載入到內存中進行操做和處理。
於是,R能處理多大的數據集取決於做業環境的內存容量。
使用R進行數據分析,需要考慮兩點,一是數據的大小。二是統計分析的方法。
R能夠處理GB級到TB級數據。
但特殊過程特殊處理。
R實例
秉承」學以至用、活學活用「的原則。以一個綜合實例融合上述內容。
R綜合實例,程序清單例如如下。
>help.start()
>library()
>install.package("vcd")
>help(package="vcd")
>library(vcd)
> help(Arthritis)
> Arthritis
> example(Arthritis)
>q()
執行效果如圖4所看到的。
總結
1 )R的優點。
2 )因R很是適合理解數據,吸引很是多用戶羣(學生、研究人員、統計學者、數據分析師等)。
3)RGUI、R安裝、R包、R程序、R幫助、R結果保存、R批處理等內容。
Resoure:
1.http://www.wangluqing.com/2014/06/r-in-action-note2/
2.《R in action》第一部分的第一章