tft每日頭條

 > 科技

 > r語言統計分析方法

r語言統計分析方法

科技 更新时间:2024-12-28 00:33:03

r語言統計分析方法?在置信度一定的前提下置信區間的長度越短,其精度越高,估計也就越好實際情況中,通常是給定一定的置信度,求盡可能短的置信區間,下面我們就來說一說關于r語言統計分析方法?我們一起去了解并探讨一下這個問題吧!

r語言統計分析方法(用R語言做數據分析)1

r語言統計分析方法

在置信度一定的前提下置信區間的長度越短,其精度越高,估計也就越好。實際情況中,通常是給定一定的置信度,求盡可能短的置信區間。

均值的區間估計

在《每天一點統計學——構建置信區間》這篇文章中已經介紹過置信區間,現在使用R語言來完成置信區間的計算。計算均值的置信區間,需要分為總體方差已知和總體方差未知兩種情況,下面是均值置信區間的計算函數(程序名:interval_estimate1.R)

interval_estimate1<-function(x,sigma=-1,alpha=0.05){

n<-length(x);

xb<-mean(x);

if(sigma>=0){

tmp<-sigma/sqrt(n)*qnorm(1-alpha/2);

df<-n;

} else {

tmp<-sd(x)/sqrt(n)*qt(1-alpha/2,n-1);

df<-n-1

}

data.frame(mean=xb,df=df,a=xb-tmp,b=xb tmp);

}

在程序中,x是來自總體的樣本數據,sigma是總體的标準差,當标準差已知時,輸入相應的值,程序采用正态分布計算區間端點,當标準差未知時,輸入項可缺省,程序采用t-分布計算區間端點。aplha是顯著性水平,缺省值為0.05.函數以數據框的形式輸出,輸出的内容有:樣本均值mean,自由度df和均值區間估計的上下限a、b。

例子:某工廠生産的零件長度X被認為服從N( μ,0.04),先從該産品中随機抽取6個,其長度的測量值如下(單位:毫米)

14.6,15.1,14.9,14.8,15.2,15.1

試求該零件長度的置信系數為0.95的區間估計

解:輸入數據,調用函數interval_estimate1()

> source("interval_estimate1.R")

> X<-c(14.6,15.1,14.9,14.8,15.2,15.1)

> interval_estimate1(X,sigma = 0.2)

得到

mean df a b

1 14.95 6 14.78997 15.11003

因此,該零件長度的置信系數為0.95的區間估計[14.79,15.11]

例子:為估計一件物體的重量μ,将其稱了10次,得到的重量(單位:千克)為:

10.1,10,9.8,10.5,9.7,10.1,9.9,10.2,10.3,9.9

假設所稱物體重量服從N(μ ,σ^2),求該物體μ置信系數為0.95的置信區間。

解:輸入數據,調用函數interval_estimate1()

> source("interval_estimate1.R")

> Y<-c(10.1,10,9.8,10.5,9.7,10.1,9.9,10.2,10.3,9.9)

> interval_estimate1(Y)

得到

mean df a b

1 10.05 9 9.877225 10.22278

因此,該物體μ置信系數為0.95的置信區間為[9.87,10.22]

再使用R語言的t.test()檢驗函數完成相應的區間估計工作:

> t.test(Y)

One Sample t-test

data: Y

t = 131.59, df = 9, p-value = 4.296e-16

alternative hypothesis: true mean is not equal to 0

95 percent confidence interval:

9.877225 10.222775

sample estimates:

mean of x

10.05

得到了相應的區間估計函數[9.88,10.22]和其他一些信息。t.test()函數得到的區間估計與我們編寫的函數得到的區間估計是相同的,從這裡可以幫助大獎了解t.test()函數的計算過程。

方差的區間估計

計算方差的置信區間,需要分為總體均值已知和總體均值未知兩種情況,下面是方差置信區間的計算函數(程序名:interva_var1.R)

interval_var1<-function(x,mu=Inf,alpha=0.05){

n<-length(x)

if(mu<Inf){

S2<-sum((x-mu)^2)/n;

df<-n;

}else{

S2<-var(x);

df<-n-1

}

a<-df*S2/qchisq(1-alpha/2,df);

b<-df**S2/qchisq(alpha/2,df);

data.frame(var=S2,df=df,a=a,b=b)

}

在程序中,x是來自總體的樣本數據,mu是總體的均值,當均值已知時,輸入相應的值,程序采用自由度為n的卡方分布計算區間端點,當均值未知時,輸入項可缺省,程序采用自由度為n-1的卡方分布計算區間端點。aplha是顯著性水平,缺省值為0.05。函數以數據框的形式輸出,輸出的内容有:樣本方差var,自由度df和方差區間估計的上下限a、b。

例子:為估計一件物體的重量μ,将其稱了10次,得到的重量(單位:千克)為:

10.1,10,9.8,10.5,9.7,10.1,9.9,10.2,10.3,9.9

下面用區間估計的方法計算這次測量的測量誤差,

>#輸入數據,調用編寫好的程序

> source("interval_var1.R")

> X<-c(10.1,10,9.8,10.5,9.7,10.1,9.9,10.2,10.3,9.9)

>#作方差的區間估計,如果均值為10

> interval_var1(X,mu=10)

var df a b

1 0.055 10 0.0268513 0.3495597

>#作方差的區間估計,如果均值未知

> interval_var1(X)

var df a b

1 0.05833333 9 0.02759851 0.420957

當均值已知(μ =10),其方差的區間估計為[0.0268,0.169],當均值未知時,其方差的區間估計為[0.0276,0.194]。從計算結果來看,在均值已知的情況下,計算結果更好一些。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved