Почему SciPy возвращает отрицательные p-значения для чрезвычайно малых p-значений с помощью точного критерия Фишера?

Я заметил, что точный тест Фишера в SciPy возвращает отрицательное p-значение, если p-значение чрезвычайно мало:

>>> import scipy as sp
>>> import scipy.stats
>>> x = [[48,60],[3088,17134]]
>>> sp.stats.fisher_exact(x)
(4.4388601036269426, -1.5673906617053035e-11)

В R, используя ту же таблицу непредвиденных обстоятельств 2x2:

> a = matrix(c(48,60,3088,17134), nrow=2)
> fisher.test(a)
p-value = 6.409e-13

Мой вопрос: 1) почему SciPy возвращает отрицательное значение p? 2) как с помощью SciPy сгенерировать правильное значение p?

Спасибо за помощь.

8
задан drbunsen 21 September 2011 в 17:43
поделиться