计划问题:婚内出轨的原因分析
# 1、准备数据
install.packages("AER") data(Affairs,package="AER") tt<-Affairs # 数据集中的几个字段: # affairs出轨次数,gender性别,age年龄,yearsmarried婚龄,children是否有小孩, # religiousness宗教信仰评分,educationj教育程度,occupation职业评分,rating婚姻自我评价# 2、处理数据
# 变量重编码 tt$y[tt$affairs==0]<-0 tt$y[tt$affairs>0] <-1 tt$y<-as.faco tt<-tt[,-1]# 3、利用Logictic回归进行拟合
model<-glm(y~.,data=tt,family=binomial()) summary(model) tstep<-step(model,,direction = c("both")) summary(tstep) drop1(tstep) model<-glm(y~age+yearsmarried+religiousness+rating,data=tt,family=binomial(link = "logit")) summary(model) coef(model) exp(coef(model))
# 4、利用泊松回归进行拟合
model1<-glm(y~.,data=tt,family=poisson()) summary(model1) tstep<-step(model1,,direction = c("both")) summary(tstep) drop1(tstep) model1<-glm(y~age+yearsmarried+religiousness+rating,data=tt,family=binomial(link = "logit")) summary(model1) coef(model1) exp(coef(model1))
结果分析:
1、这里的模型得到的婚内出轨主要原因依次是: yearsmarried-1.1 > age-0.96 > religiousness-0.72 > rating-0.63 ,婚龄、年龄、宗教信仰是婚内出轨的主要因素,数值为出轨优势比提升倍数 2、提升婚姻美满程度,可以在一定程度上降低婚内出轨的概率
结果风险:
该问题分析的维度、数据量有限,所分析的结果的误差也相对较高,尽管从逻辑上判断结果是大致正确
参考网站:
http://www.ppvke.com/Blog/archives/30377
https://blog.csdn.net/sjpljr/article/details/70169046
仍存在的问题:
1、各类模型的产生,及演算方法2、什么情况,适用什么样的模型方法
2、模型的评估方法,及效果提升
附注:
y = 1 / (1+e-z),其中:z =β0 +β1*x1 +β2*x2 +β3*x3 +...+βn*xn
y为发生概率,取值在[0,1],(1-y)为不发生概率,经过变换
odds=发生概率/不发生概率=y/(1-y) =e^(β0 +β1*x1 +β2*x2 +β3*x3 +...+βn*xn)
odds:一般称为比值、比率、比数;