Pet*_*and 10 r normal-distribution
我在 R 中有一个向量,有 1521298 个点,必须对其进行正态性测试。我选择了 Shapiro-Wilk 测试,但 R 函数shapiro.test()说:
shapiro.test(z_scores) 中的错误:样本大小必须在 3 到 5000 之间
你知道任何其他功能来测试它或如何规避这个问题吗?
使用超过 5.000 条记录无法完成夏皮罗测试。
您可以尝试仅使用前 5.000 个样本进行 shapiro 测试。如果它可以帮助您,请使用如下代码:
shapiro.test(beaver2$temp[0:5000])
Run Code Online (Sandbox Code Playgroud)
但请注意,测试将仅使用数据的前 5.000 个样本。
另一方面,如果您需要使用样本的所有记录,请使用另一个类似的检验,例如 Anderson-Darling 正态性检验。您也可以同时执行并进行比较,如下面的脚本:
# clean workspace
rm(list=ls())
# Install required packages:
install.packages('nortest')
#Model data tho use
ModelData = beaver2$temp
#Do shapiro test with only the first 5000 records
shapiro.test(ModelData[0:5000])$p.value
#Anderson-Darling normality test
library(nortest)
ad.test(ModelData)$p.value
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以尝试 Anderson-Darling 正态性检验,它适用于较大的样本量。
library(nortest)
ad.test(data$variable)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22115 次 |
| 最近记录: |