G-тест в R и Python (два примера теста пропорций) - PullRequest
0 голосов
/ 05 ноября 2018

Я провожу G-тестирование как на R, так и на Python, и получаю разные результаты, результаты, которые я получаю в Python, неверны. Почему-то я неправильно использую формулу.

Данные:

prfs
Sex F   M
Pref        
B   29  17
A   2   12

Код R:

library(RVAideMemoire)
G.test(prfs)
G-test

data:  prfs
G = 11.025, df = 1, p-value = 0.0008989

Код Python:

stats.power_divergence(prfs, lambda_ = 'log-likelihood')
Power_divergenceResult(statistic=array([28.14366538,  0.86639163]), pvalue=array([1.12635722e-07, 3.51956200e-01]))

stats.power_divergence(prfs, lambda_ = 'log-likelihood', axis = None, ddof = 2)
Power_divergenceResult(statistic=29.07673602201342, pvalue=6.956736686069527e-08)

1 Ответ

0 голосов
/ 18 мая 2019

Это старый вопрос, но следующий ответ может помочь:

obs = np.array([[29,17], [2,12]])
# G test with scipy: 
from scipy.stats import * 
g, p, dof, expctd = chi2_contingency(obs, lambda_="log-likelihood")
print("G={}; df={}; P={}".format(g, dof, p))

Выход:

G=8.859368223179882; df=1; P=0.0029158847773319975

Значения аналогичны тем, которые получены методом R.

Ссылка для вышеуказанного метода: здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...