如何实现泊松回归?

How to implement Poisson Regression?

有两种类型的广义线性模型:
1。对数线性回归,也称为泊松回归
2。逻辑回归

如何在 Python 中实现泊松回归来预测价格弹性?

查看 python 中的 statmodels 包。

这是一个example

多一点输入以避免link只回答

假设您知道 python 这是我之前提到的示例的摘录。

import numpy as np
import pandas as pd
from statsmodels.genmod.generalized_estimating_equations import GEE
from statsmodels.genmod.cov_struct import (Exchangeable,
    Independence,Autoregressive)
from statsmodels.genmod.families import Poisson

pandas 将保存数据框,其中包含您要用于提供泊松模型的数据。 statsmodels 包包含大量统计模型,例如线性、概率、泊松等。从这里您将导入泊松族模型(提示:请参阅上次导入)

您拟合模型的方式如下(假设您的因变量称为 y 并且您的 IV 是年龄、trt 和基数):

fam = Poisson()
ind = Independence()
model1 = GEE.from_formula("y ~ age + trt + base", "subject", data, cov_struct=ind, family=fam)
result1 = model1.fit()
print(result1.summary())

由于我不熟悉你问题的性质,如果你需要计算过度分散的数据,我建议你看看负二项式回归。高度过度分散时,您的泊松假设可能不成立。

关于 R 中泊松回归的大量信息 - 仅 google 它。

希望现在这个答案对您有所帮助。

如果我没记错的话,@Altons 的回答是 GEEs,它假定某种分组结构。常见的泊松回归(不需要组,例如“主题”)在 statsmodels:

中实现为一般线性模型
import patsy
import statsmodels as sm
from statsmodels.genmod.families import Poisson


fam = Poisson()
f = 'some_count ~ some_numeric_variable + C(some_categorical_variable)'
y, X = patsy.dmatrices(f, data, return_type='matrix')

p_model = sm.GLM(y, X, family=fam)

result = p_model.fit()
print(result.summary())

公式中使用的变量只是DataFrame中变量的占位符data