Borrar filtros
Borrar filtros

Very small p value

11 visualizaciones (últimos 30 días)
Micah
Micah el 10 de Nov. de 2011
I am using chi2gof to test whether my data is distributed normally. Graphically, it looks very normal, and I have fitted a normal curve to it that 'looks' good.
[h,p]=chi2gof(histdata)
h =
1
p =
0
Chi2gof reports the p value as zero - any advice on calculating the actual p value? I need to know if it is p < 0.0001 or p < 0.0000001 or whatever.

Respuesta aceptada

Wayne King
Wayne King el 10 de Nov. de 2011
Hi Micah, A couple things to try:
Set the format to long.
format long
[h,p] = chi2gof(histdata)
It may be that the p-value is really essentially zero, I mean if the p-value is 10^{-6}, are you really going to report that? You may as well just say p<0.001
Another thing is return the stats from chi2gof() and check that.
[h,p,st] = chi2gof(histdata);
1-chi2cdf(st.chi2stat,st.df)
Does that also just say 0?

Más respuestas (1)

Peter Perkins
Peter Perkins el 11 de Nov. de 2011
Micah, in recent versions of the Statistics Toolbox, chi2gof will definitely compute very small p-values correctly. In older versions, it is possible for the p-value to round down to zero if it is very small (but it'd have to be much smaller than the 1e-4 you give as an example). If you have an older version, you can still probably compute the p-value by getting the chi-squared statistic and the degrees of freedom from the third output from chi2gof, and compute the p-value as
p = gammainc(chi2stat/2,df/2,'upper')

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by