问题描述
我正在尝试使用rstan拟合多级模型后编写一个循环以提取残差。但是,其中一个变量包含在``中,我认为循环无法通过此过程:
例如,这有效:
# pull residuals
strata_residuals = extract(model,pars = paste("b[",1:16,"]",sep=""))
summary_residuals <- matrix(0,nrow = n_strata,ncol = 3)
summary_residuals[1,] = quantile(strata_residuals$`b[1]`,prob = c(0.5,0.025,0.975))
summary_residuals[2,] = quantile(strata_residuals$`b[2]`,0.975))
summary_residuals[3,] = quantile(strata_residuals$`b[3]`,0.975))
summary_residuals[4,] = quantile(strata_residuals$`b[4]`,0.975))
summary_residuals[5,] = quantile(strata_residuals$`b[5]`,0.975))
summary_residuals[6,] = quantile(strata_residuals$`b[6]`,0.975))
summary_residuals[7,] = quantile(strata_residuals$`b[7]`,0.975))
summary_residuals[8,] = quantile(strata_residuals$`b[8]`,0.975))
summary_residuals[9,] = quantile(strata_residuals$`b[9]`,0.975))
summary_residuals[10,] = quantile(strata_residuals$`b[10]`,0.975))
summary_residuals[11,] = quantile(strata_residuals$`b[11]`,0.975))
summary_residuals[12,] = quantile(strata_residuals$`b[12]`,0.975))
summary_residuals[13,] = quantile(strata_residuals$`b[13]`,0.975))
summary_residuals[14,] = quantile(strata_residuals$`b[14]`,0.975))
summary_residuals[15,] = quantile(strata_residuals$`b[15]`,0.975))
summary_residuals[16,] = quantile(strata_residuals$`b[16]`,0.975))
colnames(summary_residuals) = c("Med","LCI","UCI")
summary_residuals
但是,这不是:
# pull residuals
strata_residuals = extract(model,ncol = 3)
for(i in 1:n_strata){
summary_residuals[i,] = quantile(strata_residuals$`b[i]`,0.975))
}
colnames(summary_residuals) = c("Med","UCI")
summary_residuals
感谢您的帮助!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)