陕西省泰烜建设集团有限公司网站,推广图片发布混淆信息,网站建设大忌,长沙网络公司app参考资料#xff1a;用python动手学统计学 概率分布为泊松分布、联系函数为对数函数的广义线性模型叫作泊松回归。解释变量可以有多个#xff0c;连续型和分类型的解释变量也可以同时存在。
1、案例说明 分析不同气温与啤酒销量的关系。构造不同气温下的销量的数学模型…参考资料用python动手学统计学 概率分布为泊松分布、联系函数为对数函数的广义线性模型叫作泊松回归。解释变量可以有多个连续型和分类型的解释变量也可以同时存在。
1、案例说明 分析不同气温与啤酒销量的关系。构造不同气温下的销量的数学模型其线性预测算子如下 如果联系函数为对数函数则啤酒销量与气温的关系如下 对两边取指数变形如下 2、导入库
# 导入库
# 用于数值计算的库
import numpy as np
import pandas as pd
import scipy as sp
from scipy import stats
# 用于绘图的库
from matplotlib import pyplot as plt
import seaborn as sns
sns.set()
# 用于估计统计模型的库
import statsmodels.formula.api as smf
import statsmodels.api as sm
3、数据准备
beer_num[ 6, 11, 2, 4, 2, 2, 3, 5, 6, 7, 6, 11, 4, 16, 4, 13, 5, 7, 3, 5, 14, 22, 7, 11, 18, 17, 2, 2, 4, 16]
temp[17.5, 26.6, 5. , 14.1, 9.4, 7.8, 10.6, 15.4, 16.9, 21.2, 17.6, 25.6, 11.1, 31.3, 5.8, 25.1, 17.5, 21.8, 9.2, 10.9, 29. , 34. , 14.4, 25.8, 31.3, 31.8, 7.6, 6.2, 10.1, 31.3]
beerpd.DataFrame({beer_num:beer_num,temp:temp
})
beer.head()
4、泊松回归拟合
mod_poissmf.glm(beer_num~temp,databeer,familysm.families.Poisson()).fit()
mod_pois.summary() 5、模型的选择
# 拟合空模型
mod_pois_nullsmf.glm(beer_num~1,databeer,familysm.families.Poisson()).fit()
# 输出mod_pois_null和mod_pois的AIC
print(空模型,mod_pois_null.aic.round(3))
print(气温模型,mod_pois.aic.round(3)) 两个模型相比包含气温变量的模型的AIC更小说明气温这个解释变量时必要的。
6、回归曲线 seaborn中的函数无法直接绘制出泊松回归的曲线因而这里把所估计的模型的预测值绘制成散点图。
# 计算预测值
xnp.arange(0,37,1)
predmod_pois.predict(pd.DataFrame({temp:x}))
# 绘制散点图
plt.scatter(xbeer.temp,ybeer.beer_num)
# 绘制预测曲线
plt.plot(x,pred)
# 添加坐标轴标题
plt.xlabel(temperature)
plt.ylabel(beer_numbers) 7、泊松回归中回归系数的含义 泊松回归的联系函数为对数函数对数的一个性质就是把加法变成乘法。在正态线性模型中回归系数的含义是x每增加一个单位y增加系数个单位。而在泊松回归中x每增加一个单位y变为原来的多少倍。