2013-12-09 194 views
0

如果有人可以检查我的方法是否正确,那将会很棒。 问题简言之,如果错误计算是正确的方法。 让我们假设我有以下数据。首先用手计算分位数的置信区间(比R)

data = c(23.7,25.47,25.16,23.08,24.86,27.89,25.9,25.08,25.08,24.16,20.89) 

此外,我想检查我的数据是否遵循正态分布。

编辑:我知道有测试等,但我会集中精力构建具有信心线的qqplot。我知道汽车中有一种方法,但我想了解这些线路的构建。

所以我计算百分我的样本数据,以及用于我的理论分布(与估计mu = 24.6609sigma = 1.6828。所以我最终用含有百分这两个向量。

percentileReal = c(23.08,23.7,24.16,24.86,25.08,25.08,25.16,25.47,25.90) 
percentileTheo = c(22.50,23.24,23.78,24.23,24.66,25.09,25.54,26.08,26.82) 

现在我想计算alpha=0.05为理论百分的信心INTERVALL。如果我rembember自己是正确的,该公式由

error = z*sigma/sqrt(n), 
value = +- error 

n=length(data)一个给定的d z=quantil of the normal distribution for the given p

因此,为了获得信心INTERVALL的第二个百分我会做到以下几点:

error = (qnorm(20+alpha/2,mu,sigma)-qnorm(20-alpha/2,mu,sigma))*sigma/sqrt(n) 

插入值:

error = (qnorm(0.225,24.6609,1.6828)-qnorm(0.175,24.6609,1.6828)) * 1.6828/sqrt(11) 
error = 0.152985 
confidenceInterval(for 2nd percentil) = [23.24+0.152985,23.24-0.152985] 
confidenceInterval(for 2nd percentil) = [23.0870,23.3929] 

最后我有

percentileTheoLower = c(...,23.0870,.....) 
percentileTheoUpper = c(...,23.3929,.....) 

其余相同....

那么你觉得怎么样?

+0

我建议你阅读这篇文章:http://cran.r-project.org/doc/contrib/Ricci-distributions-en.pdf它包含一些关于正态性测试的信息 – Barranka

+0

@Barranka感谢您的回答。我阅读这篇文章,但我不想知道如何测试正常分布。我只是想计算每个百分点的置信区间。正态分布只是作为例子。 – user3071779

+4

我认为这个问题应该迁移到http://stats.stackexchange.com/ – Barranka

回答

0

如果你的目标是测试如果数据服从正态分布,使用shapiro.wilk test

shapiro.test(data) 
# Shapiro-Wilk normality test 
# data: data 
# W = 0.9409, p-value = 0.5306 

1-p是的概率分布是非正常。所以,由于p>0.05我们不能断言分布是非正常的。粗略的解释是“分布正常的可能性是53%。”您可以使用qqplot(...)。这个图越接近线性,数据正态分布的可能性就越大。

qqnorm(data) 

最后,还有是nortest包中的R,其具有,除其他事项外,Pearson卡平方测试常态:

library(nortest) 
pearson.test(data) 
# Pearson chi-square normality test 
# data: data 
# P = 3.7273, p-value = 0.2925 

这(更保守的)测试表明分配正常的可能性只有29%。所有这些测试都在文档中完整解释。

+0

感谢您的回答。我知道测试,但我的目标是获得每个百分点的置信区间,以便绘制qq图中的范围。我知道已经有这样的方法(例如在汽车包装中),但我想了解这些线的计算。 – user3071779