最近一段時間夷野,也就一周左右學(xué)習(xí)《深入淺出統(tǒng)計學(xué)》這本書的1—3章基礎(chǔ)概念知識,光學(xué)理論沒實踐感覺還是缺了點啥涝开,于是在谷歌上查了一下R編程語言和統(tǒng)計概率相關(guān)的內(nèi)容,動手實踐了一下用R編程語言來求一些統(tǒng)計量影斑,比如均值,中位數(shù)机打,方差等矫户,發(fā)現(xiàn)有了編程這個工具,用機器計算比人工用大腦残邀,計算器計算快很多皆辽,不僅節(jié)約時間而且很準確。
產(chǎn)生的一個感悟是R語言其實充當?shù)氖窃诮y(tǒng)計概率中芥挣,人工計算步驟中的翻譯驱闷,就好像你講中文但是需要和外國人交流,那么就需要一個會懂英語的人幫你把中文意思翻譯成英文意思空免。在這個過程中需要培養(yǎng)的是自己的理解能力空另,即用R編程語言來理解用統(tǒng)計概率知識解決問題的能力。也就是換一種表達方式蹋砚,用R語言來表達統(tǒng)計概率扼菠。
下面是我用R編程語言簡單實踐求“mtcar”中“hp”變量的一些基本統(tǒng)計量!
#下面顯示“mtcar”中有11個變量坝咐,我選取的求其中的“hp”變量的各個統(tǒng)計量
> str(mtcars)
'data.frame':? 32 obs. of? 11 variables:
$ mpg : num? 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
$ cyl : num? 6 6 4 6 8 6 8 4 4 6 ...
$ disp: num? 160 160 108 258 360 ...
$ hp? : num? 110 110 93 110 175 105 245 62 95 123 ...
$ drat: num? 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
$ wt? : num? 2.62 2.88 2.32 3.21 3.44 ...
$ qsec: num? 16.5 17 18.6 19.4 17 ...
$ vs? : num? 0 0 1 1 0 1 0 1 1 1 ...
$ am? : num? 1 1 1 0 0 0 0 0 0 0 ...
$ gear: num? 4 4 4 3 3 3 3 4 4 4 ...
$ carb: num? 4 4 1 1 2 1 4 2 2 4 ...
#求均值
> mean(mtcars$hp)
[1] 146.6875
#求中位數(shù)
> median(mtcars$hp)
[1] 123
#求方差
> var(mtcars$hp)
[1] 4700.867
#求標準差
> sd(mtcars$hp)
[1] 68.56287
#求最大值
> max(mtcars$hp)
[1] 335
#求最小值
> min(mtcars$hp)
[1] 52
#求四分位數(shù)
> quantile(mtcars$hp,0.25)
25%
96.5
#求上下四分位數(shù)
> quantile(mtcars$hp, c(0.25,0.75))
25%? 75%
96.5 180.0
對比一下循榆,如果自己手算加上計算器算吧,假設(shè)計算“hp”變量的均值畅厢,則需要將110 110 93 110 175 105 245 62 95 123 ...這些數(shù)全部加起來算個總和冯痢,再除以總共有多少個數(shù),是不是很費時間框杜,要是計算器不小心按錯一個數(shù)就全錯了浦楣,那不前功盡棄,所以還是挺麻煩的咪辱。但是用R語言振劳,直接敲上下面的代碼,秒秒鐘就算出來了油狂,這感覺難道不酸爽么历恐?嘿嘿!
#求均值
> mean(mtcars$hp)
[1] 146.6875
感覺又發(fā)現(xiàn)了一個新世界——編程語言的世界很奇妙专筷!