當前位置:股票大全官網 - 股票投資 - r語言的基本數據分析

r語言的基本數據分析

r語言的基本數據分析

基於R語言對基礎數據進行統計分析,包括基礎繪圖、線性擬合、logistic回歸、bootstrap抽樣和Anova方差分析的實現和應用。

話不多說,直接上代碼,代碼裏有註釋。

1.基本圖紙(箱線圖、qq圖)

#基本情節

箱線圖(x)

qqplot(x,y)

2.線性擬合

#線性回歸

n = 10

x 1 = r norm(n)# variable 1

x2 = r norm(n)#變量2

y = rnorm(n)*3

mod = lm(y~x1+x2)

模型矩陣(mod)#建立mod的矩陣

plot(mod)#繪制溶液的殘差和擬合曲線、Q-Q曲線和cook距離

summary(mod)#獲取模型的統計信息

hat values(mod)#非常重要,用於異常樣品檢測

3.邏輯回歸

#邏輯回歸

x & lt- c(0,1,2,3,4,5)

y & lt- c(0,9,21,47,60,63) #成功的次數

n & lt-70 #步道的數量

z & lt-n-y #失敗的次數

b & lt- cbind(y,z) #列綁定

fitx & lt- glm(b~x,family = binomial) #壹種特殊類型的廣義線性模型

打印(fitx)

plot(x,y,xlim=c(0,5),ylim=c(0,65))#繪制點(x,y)

beta0 & lt- fitx$coef[1]

beta 1 & lt;- fitx$coef[2]

fn & lt-函數(x)n * exp(beta 0+beta 1 * x)/(1+exp(beta 0+beta 1 * x))

par(new=T)

曲線(fn,0,5,ylim=c(0,60)) #繪制邏輯回歸曲線

3.自助抽樣

#自舉

#應用:隨機抽樣,求出最大特征值與所有特征值之和的比值,並畫圖表示分布。

dat = matrix(rnorm(100*5),100,5)

樣品數= 200 #樣品200次

# theta =矩陣(rep(0,樣本數*5),樣本數,5)

theta =rep(0,樣本數* 5);

用於(65438中的I+0:樣品數量)

{

j = sample(1:100,100,replace = TRUE)#每次獲取100個樣本

datrnd = dat[j,];#每次選擇壹行

λ= princomp(datrnd)$sdev^2;#獲取特征值

#θ[I,]=λ;

θ[I]=λ[1]/sum(λ);#繪制最大特征值的比值

}

# hist(theta[1,])#繪制第壹個(最大)特征值的直方圖

hist(theta);#繪制最大特征值的百分比分布

SD(θ)#θ的標準偏差

#上面註釋掉的語句都可以註釋掉,下壹條語句也可以註釋掉,完成繪制最大特征值分布的功能。

4.方差分析

#應用:判斷壹個自變量是否有影響(假設我們給三只豬餵三種維生素,看有沒有用)

#

y = r norm(9);# weightgain by pig (yij,I為待遇,j為pig _ id),壹般由用戶自己輸入。

#y =矩陣(c(1,10,1,2,10,2,1,9,1),9,1)

待遇& lt- factor(c(1,2,3,1,2,3,1,2,3))#每個{1,2,3}是壹個組

mod = lm(y ~處理)#線性回歸

打印(方差分析(mod))

#解釋:Df(自由度)

# sumsq:偏差(組內和殘差)總偏差總和

# meansq:方差(組內和殘差)平均方差和。

#比較治療和殘留的貢獻

#F值:平均平方(治療)/平均平方(殘差)

# Pr(& gt;F): p值。根據p值決定是否接受假設H0:多個樣本的總體均值相等(檢驗水平為0.05)。

QQ norm(mod $ residual)#繪制由mod近似的殘差

#如果殘差的qqnorm像壹條直線,說明殘差符合正態分布,也就是說治療帶來的貢獻很小,也就是說治療不能帶來收益(多餵維生素和少餵維生素沒什麽區別)。

如下圖所示,它們是

(左)用y =矩陣(c (1,10,1,2,10,2,1,9,1)和。

(右)y = r norm(9);

結果。可以看出,如果給定豬吃了維生素2後體重特別突出的數據結果,那麽qq圖殘差不再是壹條直線,換句話說,殘差不再符合正態分布,即維生素對豬的體重有影響。