使用此rnorm
函数生成的两个不同样本在Shapiro-Wilk测试中产生相同的结果。我将不胜感激对我的错误的解释。
> set.seed(18102003)
> x=rnorm(n=6,mean=1.29,sd=1.29*0.33)
> x
[1] 2.0989973 1.5440310 0.8401053 1.3630999 1.3274229 1.9812853
> shapiro.test(x)
Shapiro-Wilk normality test
data: x
W = 0.94929, p-value = 0.7345
> set.seed(18102003)
> x=rnorm(6,2.97,2.97*0.49)
> x
[1] 5.735642 3.838432 1.431988 3.219900 3.097934 5.333231
> shapiro.test(x)
Shapiro-Wilk normality test
data: x
W = 0.94929, p-value = 0.7345
测试的结果是完全相同的,因为矢量是彼此缩放比例的副本,而Shapiro-Wilks检验不变于位置和比例的变化。如果我们计算缩放向量之间的差异,可以看出这一点。
首先,再次生成向量,但给它们分配不同的名称,然后再分配一个新向量z
。
set.seed(18102003)
x <- rnorm(n = 6, mean = 1.29, sd = 1.29*0.33)
set.seed(18102003)
y <- rnorm(6, 2.97, 2.97*0.49)
set.seed(18102003)
z <- rnorm(n = 6)
现在看到x
和y
是副本z
all.equal(x, 1.29*0.33*z + 1.29)
#[1] TRUE
all.equal(y, 2.97*0.49*z + 2.97)
#[1] TRUE
scale(x) - scale(y) # equal up to floating-point precision
scale(x) - scale(z) # the same
现在运行测试,并将测试统计信息与进行比较identical
。
identical(shapiro.test(z)$statistic, shapiro.test(x)$statistic)
#[1] TRUE
identical(shapiro.test(z)$statistic, shapiro.test(y)$statistic)
#[1] TRUE
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句