require(stats)
examplecheck<-rnorm(100,0,1)
is.norm(examplecheck,10,0.05)
#examplecheck is a dataset with a defined distribution you want to check. suppose you want to devide the interval into 10 parts and want the confidence level to be 0.05#
##---- Should be DIRECTLY executable !! ----
##-- ==> Define data, use random,
##-- or do help(data=index) for the standard data sets.
## The function is currently defined as
function (x, m, a)
{
x = scale(x)
p = rep(0, m + 2)
y = rep(0, m + 2)
q = 0
df = m + 1
di = max(x) - min(x)
for (i in 1:m) {
p[i] = pnorm(di * i/m) - pnorm(di * (i - 1)/m)
if (p[i] == 0) {
break
}
for (j in 1:length(x)) if (x[j] > di * (i - 1)/m && x[j] <=
di * i/m)
y[i] = y[i] + 1
q = q + (y[i] - (length(x) * p[i]))^2/(length(x) * p[i])
}
p[m + 1] = pnorm(Inf) - pnorm(max(x))
p[m + 2] = pnorm(min(x))
y[m + 2] = length(which(x == min(x)))
q = q + length(x) * p[m + 1]
q = q + (y[m + 2] - (length(x) * p[m + 2]))^2/(length(x) *
p[m + 2])
q0 = qchisq(1 - a, df)
if (q <= q0) {
return(q0 - q)
}
else {
return(-1)
}
}
Run the code above in your browser using DataLab