2014-12-06 2 views
4

Я пытаюсь получить F-статистику и p-значение для каждого из ковариатов в GLM. В Python я использую stats mode.formula.api для проведения GLM.Тест Anova для GLM в python

formula = 'PropNo_Pred ~ Geography + log10BMI + Cat_OpCavity + CatLes_neles + CatRural_urban + \ 
     CatPred_Control + CatNative_Intro + Midpoint_of_study' 

mod1 = smf.glm(formula=formula, data=A2, family=sm.families.Binomial()).fit() 
mod1.summary() 

После того, что я пытаюсь сделать тест ANOVA для этой модели с помощью ANOVA в statsmodels.stats

table1 = anova_lm(mod3) 
print table1 

Однако я получаю сообщение об ошибке сказав: объект «GLMResults» не имеет атрибута 'ssr'

Похоже, что эта функция anova_lm применима только к линейной модели, есть ли модуль в python, который выполняет тест anova для GLM?

+1

Предварительный ответ для типа ANOVA 3 вида результата https://groups.google.com/d/msg/pystatsmodels/qQxWdSi_fQk/0O3eAgINYhkJ – user333700

ответ

2

Нет, к сожалению. Тем не менее, вы можете сворачивать свои собственные, используя методы тестирования гипотез модели на каждом из условий. Фактически, некоторые из их ANOVA methods даже не используют атрибут ssr (который представляет собой сумму квадратов квадратов модели, что, очевидно, не определено для биномиального GLM). Возможно, вы, возможно, измените этот код, чтобы сделать GLM ANOVA.

+0

Спасибо за ответ, я рассмотрю его. – DKangeyan

+0

Было бы замечательно, если бы вы могли добавить пример того, как использовать методы тестирования гипотез для данных в эксперименте. –

Смежные вопросы