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)
當然,你也可以通過菜單操作下載和安裝擴展包,請自己研究。
5_用R進行基本的統計計算
今天簡單的講一下如何用R進行基本的統計計算。
定義:
數據有很多種分類方法,在這里,為了方便理解,暫時把年齡、身高、體重等用數字表示的數據叫做數量型數據;相對的,把血型、性別、職稱等用文字敘述的數據叫做質量型數據。
在這里所說的基本的統計計算,是指對各類數量型數據進行求和、平均、求最大值最小值等等的計算。
●和與百分比
A:和
在對數量型數據進行分析計算時,求和是經常會使用到的。
比如說,有五位同學,他們的身高分別是:
1.75米 、 1.82米 、 1.78米 、 1.93米 、 1.77米
求他們的身高的總和。
和 = 1.75+1.82+1.78+1.93+1.77 = 9.05米
用R進行求和計算時,你可以按照下面的方式進行計算
> 1.75+1.82+1.78+1.93+1.77
[1] 9.05
也可以利用R本身的sum()函數,這樣的話,會更加便捷。
> shengao <- c(1.75,1.82,1.78,1.93,1.77)
> sum(shengao)
[1] 9.05
B:百分比
還是剛才那5位同學,他們的體重分別是:
69公斤 , 80公斤 , 78公斤 , 96公斤 , 65公斤
他們的總體重為:
Java代碼
> tizhong <- c(69,80,78,96,65)> sum(tizhong)[1] 388
388公斤。
那么,第一位同學占總體重的多少呢?
按比例計算:
Java代碼
> tizhong/sum(tizhong)[1] 0.1778351 0.2061856 0.2010309 0.2474227 0.1675258
按百分比計算:
Java代碼
> 100*(tizhong/sum(tizhong))[1] 17.78351 20.61856 20.10309 24.74227 16.75258
使用擴展包sca中的percent函數,可以用帶%符號的表示方式顯示結果。
Java代碼
> library(sca)> percent(tizhong/sum(tizhong))[1] “18 %” “21 %” “20 %” “25 %” “17 %”
還可以用參數d來指定小數點后的表示位數。在不指定的情況下,小數點后的數字不表示。
Java代碼
> percent(tizhong/sum(tizhong),d=1)[1] “17.8 %” “20.6 %” “20.1 %” “24.7 %” “16.8 %”
如果不想結果被雙引號包圍,可以用noquote命令
Java代碼
> noquote(percent(tizhong/sum(tizhong),d=1))[1] 17.8 % 20.6 % 20.1 % 24.7 % 16.8 %
●表示中心的統計量
表示數據中心位置的統計量有很多種,最基本的有:平均值、最頻值。
A:平均值
上面那五位同學的年齡分別為:
19歲 、 21歲 、 20歲 、 26歲 、 17歲
在求這五位同學的年齡的平均值時,可以用下面這種方法:
Java代碼
> (19+21+20+26+17)/5[1] 20.6
也可以用R自帶的mean()函數:
Java代碼
> nianling <- c(19,21,20,26,17)> mean(nianling)[1] 20.6
B:最頻值
在數據中最頻繁出現的數值叫做最頻值。
我們先用其他的函數來間接的求最頻值。
例如:我們在求下面這組數據的最頻值時,可以使用table函數。
Java代碼
1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4> table(c(1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4)) 1 3 4 5 7 8 9 23 1 2 1 1 3 1 1 1
從返回的結果中我們可以清楚地看到,在數據中 “7” 出現了3次,因此 “7” 為該組數據的最頻值。
接着,我們直接用函數median()來求最頻值。
Java代碼
> median(c(1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4))[1] 7
●表示分散的統計量
表示數據中心的統計量雖然很重要,但是表示數據四周的分散信息的統計量也十分的重要。
A:最大值、最小值和范圍
我們用tizhong數據,分別計算五位同學體重的最大值、最小值和體重的分布范圍。
最大值
Java代碼
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)
當然,你也可以通過菜單操作下載和安裝擴展包,請自己研究。
5_用R進行基本的統計計算
今天簡單的講一下如何用R進行基本的統計計算。
定義:
數據有很多種分類方法,在這里,為了方便理解,暫時把年齡、身高、體重等用數字表示的數據叫做數量型數據;相對的,把血型、性別、職稱等用文字敘述的數據叫做質量型數據。
在這里所說的基本的統計計算,是指對各類數量型數據進行求和、平均、求最大值最小值等等的計算。
●和與百分比
A:和
在對數量型數據進行分析計算時,求和是經常會使用到的。
比如說,有五位同學,他們的身高分別是:
1.75米 、 1.82米 、 1.78米 、 1.93米 、 1.77米
求他們的身高的總和。
和 = 1.75+1.82+1.78+1.93+1.77 = 9.05米
用R進行求和計算時,你可以按照下面的方式進行計算
> 1.75+1.82+1.78+1.93+1.77
[1] 9.05
也可以利用R本身的sum()函數,這樣的話,會更加便捷。
> shengao <- c(1.75,1.82,1.78,1.93,1.77)
> sum(shengao)
[1] 9.05
B:百分比
還是剛才那5位同學,他們的體重分別是:
69公斤 , 80公斤 , 78公斤 , 96公斤 , 65公斤
他們的總體重為:
Java代碼

- > tizhong <- c(69,80,78,96,65)
- > sum(tizhong)
- [1] 388
> tizhong <- c(69,80,78,96,65)> sum(tizhong)[1] 388
388公斤。
那么,第一位同學占總體重的多少呢?
按比例計算:
Java代碼

- > tizhong/sum(tizhong)
- [1] 0.1778351
0.2061856
0.2010309
0.2474227
0.1675258
> tizhong/sum(tizhong)[1] 0.1778351 0.2061856 0.2010309 0.2474227 0.1675258
按百分比計算:
Java代碼

- > 100*(tizhong/sum(tizhong))
- [1] 17.78351
20.61856
20.10309
24.74227
16.75258
> 100*(tizhong/sum(tizhong))[1] 17.78351 20.61856 20.10309 24.74227 16.75258
使用擴展包sca中的percent函數,可以用帶%符號的表示方式顯示結果。
Java代碼

- > library(sca)
- > percent(tizhong/sum(tizhong))
- [1] “18 %” “21 %” “20 %” “25 %” “17 %”
> library(sca)> percent(tizhong/sum(tizhong))[1] “18 %” “21 %” “20 %” “25 %” “17 %”
還可以用參數d來指定小數點后的表示位數。在不指定的情況下,小數點后的數字不表示。
Java代碼

- > percent(tizhong/sum(tizhong),d=1)
- [1] “17.8 %” “20.6 %” “20.1 %” “24.7 %” “16.8 %”
> percent(tizhong/sum(tizhong),d=1)[1] “17.8 %” “20.6 %” “20.1 %” “24.7 %” “16.8 %”
如果不想結果被雙引號包圍,可以用noquote命令
Java代碼

- > noquote(percent(tizhong/sum(tizhong),d=1))
- [1] 17.8 % 20.6 % 20.1 % 24.7 % 16.8 %
> noquote(percent(tizhong/sum(tizhong),d=1))[1] 17.8 % 20.6 % 20.1 % 24.7 % 16.8 %
●表示中心的統計量
表示數據中心位置的統計量有很多種,最基本的有:平均值、最頻值。
A:平均值
上面那五位同學的年齡分別為:
19歲 、 21歲 、 20歲 、 26歲 、 17歲
在求這五位同學的年齡的平均值時,可以用下面這種方法:
Java代碼

- > (19+21+20+26+17)/5
- [1] 20.6
> (19+21+20+26+17)/5[1] 20.6
也可以用R自帶的mean()函數:
Java代碼

- > nianling <- c(19,21,20,26,17)
- > mean(nianling)
- [1] 20.6
> nianling <- c(19,21,20,26,17)> mean(nianling)[1] 20.6
B:最頻值
在數據中最頻繁出現的數值叫做最頻值。
我們先用其他的函數來間接的求最頻值。
例如:我們在求下面這組數據的最頻值時,可以使用table函數。
Java代碼

- 1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4
- > table(c(1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4))
1
3
4
5
7
8
9
23
1
2
1
1
3
1
1
1
1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4> table(c(1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4)) 1 3 4 5 7 8 9 23 1 2 1 1 3 1 1 1
從返回的結果中我們可以清楚地看到,在數據中 “7” 出現了3次,因此 “7” 為該組數據的最頻值。
接着,我們直接用函數median()來求最頻值。
Java代碼

- > median(c(1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4))
- [1] 7
> median(c(1 , 7 , 3 , 7 , 8 , 23 , 5 , 7 , 9 , 3 , 4))[1] 7
●表示分散的統計量
表示數據中心的統計量雖然很重要,但是表示數據四周的分散信息的統計量也十分的重要。
A:最大值、最小值和范圍
我們用tizhong數據,分別計算五位同學體重的最大值、最小值和體重的分布范圍。
最大值
Java代碼

- > max(tizhong)
- [/1] 96
- <PRE class=java name="code">最小值
- <PRE class=java name="code">> min(tizhong)
- [1] 65
- </PRE>
- <BR>范圍
- <BR><PRE class=java name="code">> range(tizhong)
- [1] 65
96 - </PRE>
- <BR>
- <BR>B:方差和標准偏差(variance AND standard deviation)
- <BR>
- <BR>在R中,有很方便的求方差和標准偏差的函數var()和sd()。
- <BR>
- <BR>例如在求tizhong數據的方差和標准偏差時,可以如下計算。
- <BR>方差:
- <BR><PRE class=java name="code">> var(tizhong)
- [1] 144.3
- </PRE>
- <BR>標准偏差:
- <BR><PRE class=java name="code">> sd(tizhong)
- [1] 12.01249
- </PRE>
- <BR>C:四分位數
- <BR>
- <BR>四分位數是指把樣本數據按從小到大的順序等分成四份,各等分點上的數即為四分位數。
- <BR>例如:數據
- <BR>
- <BR>3(0%點) 5
6(25%點) 8
9(50%點) 11
12(75%點) 15
16(100%點) - <BR>
- <BR>25%點的6和75點的12分別稱為下四分位數和上四分位數。
- <BR>
- <BR>上四分位數與下四分數之差叫做四分位間距。
- <BR>
- <BR>在R中我們可以用quantile()函數和IQR()函數來求四分位數和四分位間距。
- <BR><PRE class=java name="code">> sifenshu <- c(3,5,6,8,9,11,12,15,16)
- > quantile(sifenshu)
0% 25% 50% 75% 100%
3
6
9
12
16- > IQR(sifenshu)
- [1] 6
- </PRE>
- <BR>
- <BR>今天簡單介紹了一下如何用R對一些基本的統計量進行計算,如果有其它的要求的,歡迎提出來,我會進一步介紹的。今天就先到這里了,呵呵。
- <BR>
- <BR>
- <BR>6_R的函數
- <BR>
- <BR>R中有很多的標准自帶的函數,也有很多的由擴展包支持的函數。今天我們主要看一看R中標准自帶的函數。
- <BR>
- <BR>首先簡單定義一下什么是函數:
- <BR>
- <BR>在R中,所謂函數實際上就是一系列程序的組合。
- <BR>
- <BR>為了能夠更深刻的理解這句話,我將在下面這個例子中先一步一步的計算幾個數的平均值;再講如何把這些可以重復利用的運算步驟改寫成為自己服務的函數;最后,我們再看一下R中已經為我們准備好了的求平均值的函數的用法:
- <BR>
- <BR><PRE class=java name="code">1,一段程序
- 我們用R計算下面這5個數的和
23
34
56
78
89- 在R中,我們剛開始可能會這樣寫:
- >x <- c( 23, 34, 56, 78, 89 )
- >z <- 0
- >for( i in 1:5 ){
- >z <- z + x
- >}
- >z <- z/5
- >z
- [1]56