问题描述
我有一个四列(https://www.dropbox.com/s/hho5sgwjhlk4185/data.csv?dl=0)的数据框。我使用公式rtp
在其他列的基础上填充了0.03385*(pp**2)*(mv**0.94500)*(cc**(-0.03047))
列。现在,我想看看这个方程的不确定性,我不知道该怎么做。我应该使用某种形式的伪数据集还是蒙特卡洛,如果是,该如何为rtp
列执行此操作?我用R。
解决方法
据我了解您的data.csv表,每个样本都有一行。因此,如果我对它的理解正确,那么您已经拥有所有分布正确的样本。
您在这些样本上计算了rtp
列。然后,如果您想要rtp
的分布(标准误差,置信区间),只需直接从rtp样本值中获取即可! :
dat <- read.csv("data.csv")
mean(dat$rtp)
# [1] 0.008637943
median(dat$rtp)
# [1] 0.005488155
sd(dat$rtp)
# [1] 0.01236283
quantile(dat$rtp,c(0.025,0.975))
# 2.5% 97.5%
# 0.0007099517 0.0436855541
就这么简单。这与您在MCMC样本上执行的原理完全相同,但是每行中都已经有样本,因此无需使用MCMC生成它们。