我正在尝试基于一些连续变量(固定效应)和分类变量(随机效应)对二进制响应变量建模。
这是模型方程式:Y ijk = β X i + Z j + Z k + < i>ε。
Y ijk :会话是否获得点击
X i :会话I中客户的固定效果功能:num_purchases_cat1,num_purchases_cat2,num_purchases_cat3
Z j :随机效果:ad_category(100个类别)
Z k :随机效果:ad_price(5个存储桶)
说我的data_train包含所有这些列:[clicked,num_purchases_cat1,num_purchases_cat2,num_purchases_cat3,ad_category,ad_price]。两个随机效果ad_category和ad_price是独立的,因此我想采用交叉效果混合效果模型。
Python's Documentation指出我需要将整个数据集视为一个组,因此,我正在尝试以下操作:
import statsmodels.regression.mixed_linear_model as mlm
lmm = mlm.MixedLM(data_train.clicked, data_train[['num_purchases_cat1', 'num_purchases_cat2', 'num_purchases_cat3']], groups=np.ones(data_train.shape[0]))
现在我正在努力指定exog_re
和exog_vc
。我应该简单地放入data_train[['ad_category','ad_price']]
还是应该将其转换为单热编码?如果我只想拥有随机斜率与随机截距,该如何改变?