Я новичок в python. Я пытаюсь выполнить гамма-регрессию, я надеюсь получить оценки, аналогичные R, но я не могу понять синтаксис Python, и он генерирует ошибку, некоторое представление о том, как ее решить.
Мой код R:
set.seed(1)
y = rgamma(18,10,.1)
print(y)
[1] 76.67251 140.40808 138.26660 108.20993 53.46417 110.61754 119.11950 113.57558 85.82045 71.96892
[11] 76.81693 86.00139 93.62010 69.49795 121.99775 114.18707 125.43608 120.63640
# Option 1
model = glm(y~1,family=Gamma)
summary(model)
# Option 2
# x = rep(1,18)
# summary(glm(y~x,family=Gamma))
Выход:
summary(model)
Call:
glm(formula = y ~ 1, family = Gamma)
Deviance Residuals:
Min 1Q Median 3Q Max
-0.57898 -0.24017 0.07637 0.17489 0.34345
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.009856 0.000581 16.96 4.33e-12 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for Gamma family taken to be 0.06255708)
Null deviance: 1.1761 on 17 degrees of freedom
Residual deviance: 1.1761 on 17 degrees of freedom
AIC: 171.3
Number of Fisher Scoring iterations: 4
Код Python
y = [76.67251,140.40808,138.26660,108.20993,53.46417,110.61754,
119.11950,113.57558,85.82045,71.96892,76.81693,86.00139,
93.62010,69.49795,121.99775,114.18707,125.43608,120.63640]
x = np.repeat(1,18)
import numpy
import statsmodels.api as sm
model = sm.GLM(x,y, family=sm.families.Gamma()).fit()
print(model.summary())
Я ожидал вывод, аналогичный R