为什么在BoxCox转换后在Shapiro Wilk检验中得到p值= NA?

时间:2019-01-02 12:25:21

标签: r statistics normalization

这是我在这个论坛上的第一个问题,对我很有帮助!我遇到了一个我不知道如何解释或解决它的问题:

我测量到的生化参数(称为“菌群”)未达到正常水平。因此,我按照以下代码进行了BoxCox转换:

sum(is.na(dataframe$droms))
[1] 0
boxcoxnc(dataframe$droms, method='sw', lambda =seq(-5,5,0.01),plot=TRUE, alpha=0.05, verbose=TRUE)

Error in boxcoxnc(data_turbidez$droms, method = "sw", lambda = seq(-5,  : 
Data must include positive values. Specify shifting parameter, lambda2

因此,我将代码更改为这一新代码:

 boxcoxnc(dataframe$droms, method='sw', lambda2=2, lambda =seq(-5,5,0.01),plot=TRUE, alpha=0.05, verbose=TRUE)

lambda.hat : -0.53 
statistic  : 0.9895904 
p.value    : 0.1819954 

Result     : Transformed data are normal. 

然后我开始应用转换:

dataframe$droms_normalized <- (dataframe$droms^-0.53-1)/-0.53

但是当我尝试再次检查直方图的正态性时,我没有得到boxcox变换给出的相同直方图,而我从Shapiro Wilk检验中得到了以下输出:

W = NaN, p-value = NA

您能帮我找出我在转换中做错了什么吗?

非常感谢!

0 个答案:

没有答案