【问题标题】:Multinomial Logit Model for Panel Data including a Random Term包含随机项的面板数据的多项 Logit 模型
【发布时间】:2017-09-08 12:17:09
【问题描述】:

我确实有一个面板数据集,可以通过以下方式模仿:

set.seed(123)
N = 1000
X2 = runif(N, 0, 1)
X1 = sample(0:6, N, replace=TRUE)
eps = rnorm(N, 0, 6)
length = sample(1:4,N,replace=TRUE)
Ycont = 0.5*X2 - 0.3*X1 +0.2*length + 10 + eps
Y = ntile(Ycont, 3)
Y =Y - 1
df_org  = data.frame(id=as.character(1:N), length, Y, X1, X2)
df_org[df_org$length==2 & df_org$Y==1,]$Y=0 # keine Ausfälle in t2
df = df_org
# Data-Manipulation
df_long = setDT(df_org)[,.SD[rep(1L,(length))], by = id]
# add length-variable:
df_long = df_long[ , time := 1:.N, by=id]
# correct dependent variable
df_long$Y_new = df_long$Y
df_long[df_long$time < df_long$length,]$Y_new = 0
df_long$int_time = as.factor(df_long$time)

我现在想为每个人拟合一个随机项的多项式 logit 模型 - 由其 ID 标识。

没有随机项,我的模型计算为:

reg_surv=multinom(Y_new~-1+int_time+X1+X2,data=df_long,maxit=500,MaxNWts =2000)

我读到我需要估计一个质点混合多项式 logit 模型。但是如何在 R 中实现呢?

【问题讨论】:

    标签: r panel-data multinomial


    【解决方案1】:

    我不太确定质点部分,但您可以通过将个体 ID 作为模型中的因素在 R 中添加随机效应。 这有效地为您的模型添加了个人级别的虚拟变量(这是每个人的虚拟变量)并“允许”您的截距在个人级别上发生变化,从而衡量给定个人与平均“分数”之间的差异。

    延伸阅读:https://en.wikipedia.org/wiki/Random_effects_model

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-25
      • 1970-01-01
      • 2022-01-24
      • 2021-01-10
      • 1970-01-01
      • 2014-12-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多