You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用logitr包估算绿色基础设施WTP时缺失z值的技术咨询

解决logitr包MNL模型标准误、z值及p值为NA的问题

核心问题分析

从你的模型输出看,存在两个关键问题:

  1. 部分变量(age、gar)系数估计为0,说明模型无法识别这些变量的影响;
  2. 所有系数的标准误、z值、Pr(>|z|)均为NA,这是因为优化过程中无法计算Hessian矩阵(用于估计标准误),通常源于模型设定错误或变量识别不足。

解决方案

1. 修正模型设定:区分备选方案属性与个体属性

你的数据中,age、edu、bud、act属于个体属性(每个受访者的特征,同一id下不同备选方案的变量值相同),而price、gar、gre属于备选方案属性(每个备选方案的特征,同一id下不同备选方案的变量值不同)。

在MNL模型中,个体属性不能直接作为全局参数纳入pars——因为同一观测下不同备选方案的个体属性值完全相同,会导致模型识别失效,进而引发Hessian矩阵奇异。

正确做法:将个体属性与备选方案做交互,让系数反映个体属性对特定备选方案选择概率的影响。示例代码:

# 生成个体属性与备选方案2的交互项(以alt=2为参照)
wtp2.7 <- wtp2.7 %>%
  mutate(
    age_alt2 = age * (alt == 2),
    edu_alt2 = edu * (alt == 2),
    bud_alt2 = bud * (alt == 2),
    act_alt2 = act * (alt == 2)
  )

# 重新拟合模型:仅纳入备选方案属性和交互项
model <- logitr(
  data = wtp2.7,
  outcome = "choice",
  obsID = "id",
  pars = c("price", "gar", "gre", "age_alt2", "edu_alt2", "bud_alt2", "act_alt2")
)

2. 移除无解释力的变量

age和gar的系数估计为0,说明这些变量对选择行为没有显著解释力,建议先从模型中移除,再重新拟合,观察标准误是否恢复:

model_simplified <- logitr(
  data = wtp2.7,
  outcome = "choice",
  obsID = "id",
  pars = c("price", "gre", "edu_alt2", "bud_alt2", "act_alt2")
)

3. 调整优化算法与参数

模型退出状态为3(因函数容差达到而停止优化),可以尝试更换优化算法或调整容差参数,确保Hessian矩阵能被正确计算:

model_optim <- logitr(
  data = wtp2.7,
  outcome = "choice",
  obsID = "id",
  pars = c("price", "gre", "edu_alt2", "bud_alt2", "act_alt2"),
  algorithm = "NLOPT_LD_SLSQP", # 更换为SLSQP算法
  ftol_rel = 1e-10, # 减小相对容差
  ftol_abs = 1e-10  # 减小绝对容差
)

4. 直接在WTP空间拟合模型

既然你的目标是估算支付意愿(WTP),可以直接在WTP空间拟合模型,输出结果将直接包含WTP值及其标准误,无需后续转换:

model_wtp <- logitr(
  data = wtp2.7,
  outcome = "choice",
  obsID = "id",
  pars = c("gre", "edu_alt2", "bud_alt2", "act_alt2"), # 移除price,单独指定为支付变量
  price = "price",
  space = "wtp"
)

summary(model_wtp) # 查看包含WTP及标准误的结果

5. 验证数据格式

确保数据符合logitr的要求:

  • 每个id对应多个alt,且每个id的choice列仅有一个1(表示选中的备选方案);
  • 备选方案属性变量(如price)在同一id的不同alt间存在差异。

内容的提问来源于stack exchange,提问作者MiAe Jeong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 16:34:54