brms hurdle_lognormal模型:这是将后验值转换为y变量单位,并将障碍值转换为概率的正确方法吗?

问题描述

我有一个零膨胀的y变量。

能否请您确认我的解决方案,以将brms跨栏对数正态后验值转换为有意义的估计值,例如y变量单位(对数正态部分)或零概率(跨栏部分)。

模型

model = brm(br(y ~ (1 | county),hu ~ (1 | county),data = data,family = hurdle_lognormal())

后验变量

get_variables(model)

 [1] "b_Intercept"                  
 [2] "b_hu_Intercept"               
 [3] "sd_county__Intercept"         
 [4] "sd_county__hu_Intercept"      
 [5] "sigma"     
                   
 [6] "r_county[A,Intercept]"     
 [7] "r_county[B,Intercept]"    
 [8] "r_county[C,Intercept]"    
 [9] "r_county[D,Intercept]"  
   
[10] "r_county__hu[A,Intercept]"  
[11] "r_county__hu[B,Intercept]"  
[12] "r_county__hu[C,Intercept]"  
[13] "r_county__hu[D,Intercept]" 

[14] "lp__"                         
[15] "accept_stat__"                
[16] "stepsize__"                   
[17] "treedepth__"                  
[18] "n_leapfrog__"                 
[19] "divergent__"                  
[20] "energy__" 

每个县的平均y值计算解决方案

我必须添加“ b_Intercept”和“ r_county [,Intercept]”,并采用exp()?在代码中:

model %>%
  spread_draws(b_Intercept,r_county[county,]) %>%
  median_qi(condition_mean = exp(b_Intercept + r_county))

每个县计算零概率(y = 0)的解决方案

我必须添加“ b_hu__Intercept”和“ r_county__hu [,Intercept]”,并将其放入inv_logit_scaled()函数中吗?在代码中:

m %>%
  spread_draws(b_hu_Intercept,r_county__hu[county,]) %>%
  median_qi(condition_mean = inv_logit_scaled(b_hu_Intercept + r_county__hu))

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...