使用rethinking包quap函数报错‘Bad binding access’求助
问题说明
复现Richard McElreath所著《Statistical rethinking》(《统计反思》)一书中的示例6.2时,运行以下R代码会触发错误:Bad binding access。
## 生成示例6.2的模拟数据: set.seed(909) nSim = 100 height = rnorm(nSim,10,2) leg_prop = runif(nSim,0.4,0.5) leg_left = leg_prop*height + rnorm( nSim , 0 , 0.02 ) leg_right = leg_prop*height + rnorm( nSim , 0 , 0.02 ) df = data.frame(height, leg_left, leg_right) ## 拟合数据: library(rethinking) MAP = quap( alist( height ~ dnorm( mu , sigma ) , mu <- a + bl*leg_left + br*leg_right , a ~ dnorm( 10 , 100 ) , bl ~ dnorm( 2 , 10 ) , br ~ dnorm( 2 , 10 ) , sigma ~ dexp( 1 ) ), data=df )
将代码中的quap替换为ulam后,程序可正常运行。推测该问题源于R版本与rethinking包的兼容性冲突,我的环境参数如下:
- R版本:4.2.2 (2022-10-31) -- "Innocent and Trusting"
- 硬件平台:aarch64-apple-darwin20 (64位) M1处理器
- 操作系统:OSX "Monterey" 12.5.1
- CmdStan版本:2.31.0
- rethinking版本:2.21
- rstan版本:2.21.8
内容的提问来源于stack exchange,提问作者NotMe
相关产品推荐
相关产品推荐

