I have been testing the use of kstest for the detection of a discrete uniform distribution. However, I believe that I am encountering an error, or using the function incorrectly. For example, if I define a variable array
where tabluate gives the following very uniform distribution
and I then run the test
kstest(x, 'CDF', [x unidcdf(x,4)])
I get a result of h = 1, i.e. rejection of the hypothesis that x is discrete uniform, which is clearly not the case (at least in my eyes). Would someone with more experience with this test potentially be able to helpfully provide an explanation as to why I'm getting this result? And whether I'm doing something wrong?