我正在 R 中运行(至少尝试)一个 gibbs 采样器,并且在查看数据时遇到问题。
我正在使用 R Studio
以下是我的代码供参考:
###Step 2
###Draw from truncated normal
for(i in 1:length(cens.list[,1])){
row.i <- as.numeric(cens.list[i,1])
mu.i <- as.numeric(x.mat[row.i,] %*% beta)
bio.set[row.i,var.name] <- rtnorm(1,mean=mu.i,sd=sqrt(var),lower=-Inf,upper=dl)
}
test <- bio.set[which(row.names(bio.set) %in% cens.list[,1]),]
bio.set 包含我正在尝试估算的变量和其他信息
cens.list 包含要估算的删失值列表及其相应的行信息。
dl 是检测限。由于低于该值,被估算的观察结果丢失
问题:当我尝试查看数据(使用View()
或edit()
)时,估算值都显示相同的数字(检测限)。无论我是通过测试数据框还是通过 bio.set 本身查看它们,都会发生这种情况。
但是,如果我通过键入单独查看值
bio.set[995,var.name] #Where I set the row number to be one of the imputed rows.
它向我展示了正确绘制的值。
假设数据已正确存储并且只是查看器问题,我可以继续吗?还是我做错了什么?