R語言 入門知識--常用操作和例子


1 R的下載、安轉   (轉)

R有很多的版本,支持目前主流的操作系統MAC、Linux和WINDOWS系列。因為我個人是在WINDOWS下用R的,所以在這里將只介紹WINDOWS下R的下載&安裝。 

下載R: 

你可以從世界各地很多網站上下載到R,官方的中國下載點是: 
http://www.lmbe.seu.edu.cn/CRAN/bin/windows/base/ 

在我寫這篇文章的時候,最新的版本是R-2.2.1版。 
在網絡上有一篇被翻譯過來的R入門教材,可以在這里找到 :R 導論(入門) 

安裝R: 

1,雙擊R-2.2.1-win32.exe文件,進入安裝畫面。 
2,在Welcome to the R for Windows Setup Wizard的畫面中,單擊NEXT。 
3,在License Agreement的畫面中,選擇[I accept the agreement],然后單擊NEXT。 
4,在Select Destination Location的畫面中,可以自行設定安裝目錄,默認為:[C:\Program Files\R\R-2.2.1],單擊NEXT。 
5,在接下來的過程中一律選則NEXT安裝即可。 

2 簡單的數學計算、數學函數以及如何編輯R程序 

1,用R進行簡單的計算: 

我們可以用R進行以下各類運算。 

加法 + 
減法 - 
乘法 * 
除法 / 
冪運算 ^ 
整數商 %/% 
余數 %% 
例如: 
輸入: (1 + 2 - 3 * 4) / 5^6 
結果: [1] -0.000576 

2,R中還有很多的數學函數可以使用,比如說開方函數、對數函數等等。 

例如: 
輸入: sqrt(2) 
結果:[1] 1.414213 

你還可以使用多個函數進行計算。例如: 
輸入: sqrt(100) + round(100) / log10(100) 
結果:[1] 60 下面介紹的是R中可以使用的數學函數。 

sqrt : 開平方函數 
abs : 絕對值函數 
exp : 2.71828… 
expm1 : 當x的絕對值比1小很多的時候,它將能更加正確的計算exp(x)-1 
log : 對數函數 
log10 : 對數(底為10)函數 
log2 : 對數(底為2)函數 
sin : 正弦函數 
cos : 余弦函數 
tan : 正切函數 
asin : 反正弦函數 
acos : 反余弦函數 
atan : 反正切函數 
sinh : 超越正弦函數 
cosh : 超越余弦函數 
tanh : 超越正切函數 
asinh : 反超越正弦函數 
acosh : 反超越余弦函數 
atanh : 反超越正切函數 
logb : 和log函數一樣 
log1px : 當x的絕對值比1小很多的時候,它將能更加正確的計算log(1+x) 
gamma : Γ函數(伽瑪函數) 
lgamma : 等同於log(gamma(x)) 
ceiling : 返回大於或等於所給數字表達式的最小整數 
floor : 返回小於或等於所 給數字表達式的最大整數 
trunc : 截取整數部分 
round : 四舍五入 
signif(x,a) : 數據截取函數 x:有效位 a:到a位為止 
3,R程序的輸入/編輯 
你可以直接在R的環境里輸入R命令執行計算,也可以用任何一款文本編輯器進行編程。R程序的默認文件名后綴是[ .R ]。 
4,環境設置函數options() 
用options()命令可以設置一些環境變量。 
比如說: 
options(digits=10) 
這個命令,可以把R的整數表示能力設為10位。 
options(warn=-1) 
這個命令,可以忽視任何警告。(warn=1時,為不放過任何警告) 
…… 
使用help(options)可以查看詳細的參數信息。 


RWEKA: 

WEKA是一個JAVA寫的數據挖掘的工具,RWEKA則是在R中調用WEKA的一個界面。 

擴展包說明&下載地址(英文):http://cran.r-project.org/src/contrib/Descriptions/RWeka.html 

3、R的數據類型 

R中包含以下的基本數據類型。 

空值(NULL) 
意義 :該對象里什么都沒有(甚至連0也沒有) 

欠損值、不定值(NA),非數(NaN),無限大(Inf) 
意義 :NA:表示數據缺損;NaN:表示用數字無法表示;Inf:無限大 

復數(complex) 
意義 :復數 

字符串(character) 
意義 :不是單一的字符,而是用雙/單引號括起來的字符 
邏輯值(logical) 
意義 :T表示真,F表示假 

4_關於R的一些基本知識 
首先看一下這一次要講的內容。 
在用R進行數據分析和計算的時候,將會用到很多變量、函數、數組等等。而對象則是對所有這些變量、函數、數組等的總稱。比如說,下面這個式子:x <- 2通常我們會說,x是一個變量,我們通過賦值運算把它的值設為2。但是在R里,不論我們是給一個變量賦值也好,還是對一個數組進行初始化也好,我們統統把它稱為[對象]。 

什么是對象(Object) 
如何改變工作目錄 
關於擴展包(庫函數) 
R的數據類型 
環境設置函數options() 
接下來,我們一個一個的簡單介紹。 

1,什么是對象(Object) 
在用R進行數據分析和計算的時候,將會用到很多變量、函數、數組等等。而對象則是對所有這些變量、函數、數組等的總稱。 
比如說,下面這個式子: 
x <- 2 
下面的對象是R的預設對象。我們在命名自己的對象時,是不能與下面這些對象重名的。 
break 
else 
for 
function 
if 
TRUE 
in 
next 
repeat 
return 
while 
FALSE 
另外: 
使用objects()函數,還可以查看目前存在的對象名。 
使用rm()函數,可以消除自己所定義過的對象。( 例如: rm(killme) ) 
使用rm(list=ls(all=TRUE))命令,可以消除自己所定義過的所有的對象。 
命名對象時,要注意大小寫。(例如:x和X是兩個不同的對象) 
2、如何改變工作目錄 
你可以用getwd()命令來查看當前目錄,也可以用類似setwd(”c:/usr”)的命令來更改當前的目錄。 
你還可以用dir()命令來查看當前目錄里的文件。(好像回到了dos時代…呵呵) 
3、關於擴展包(庫函數) 
R有很好的擴展性能,默認下R自帶了以下的擴展包。 
base:R的基本擴展包 
boot:R的啟動函數庫 
class:Classification的函數庫 
cluster:進行聚類分析計算的函數庫 
foreign:讀取其它的統計軟件(如:SAS…)等生成的文件的函數庫 
grid:grid圖像函數庫 
KernSmooth:進行核函數密度估計運算的函數庫 
lattice:lattice圖像函數庫 
MASS:在『Modern Applied Statistics with S』中出現的數據與函數庫 
methods:定義了在R中用於對象的各種方法、類、程序以及工具。 
mgcv:GCV和一般加法模型GAM(generalized additive model)的函數庫 
nlme:線性混合效果模型和非線性混合效果模型的函數庫 
nnet: 
rpart:使用了再歸算法的分類和回歸樹的函數庫 
spatial: 
splines:splines回歸的函數庫 
stats:R的統計函數庫 
stats4:S4類的統計函數庫 
survival: 
tcltk:Tcl/Tk的接口函數庫 
tools:用於擴展包開發和管理的函數庫 
utils: 
另外: 
使用library(help=”擴展包名”)命令可以查看該擴展包的詳細信息 
使用library(擴展包名)命令可以使用該擴展包 
使用search()命令可以查看現在已經讀取的擴展包 
使用detach(”package:擴展包名”)命令可以卸載某個擴展包 
使用data()命令可以查看當前可使用的數據對象 
使用data(package = “擴展包名”)命令可以查看在該擴展包中的數據對象 
擴展包的安裝: 
使用下面的命令,可以聯網安裝擴展包。 
options(CRAN=”http://cran.r-project.org”) 
install.packages(”擴展包名”) 

如果你已經下載了擴展包的ZIP壓縮文件,你可以用下面的命令指定路徑安裝擴展包。 
install.packages(”路徑名/文件名.zip”, contriburl = NULL) 
例如:install.packages(”c:/adapt_1.0-4.zip”, contriburl = NULL) 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM