Winbugs 在Bug中使用rank()函数
如果我在OpenBUGS中运行以下代码:Winbugs 在Bug中使用rank()函数,winbugs,Winbugs,如果我在OpenBUGS中运行以下代码: MODEL { for (i in 1:50) { variable[i] ~ dunif(50, 100) } item <- rank(variable[], 1) } 这意味着变量的大约25个成分小于或等于1,而变量的任何成分都不能小于1——由变量值的后验分布证实: mean sd MC_error val2.5pc median val97.5pc start
MODEL
{
for (i in 1:50) {
variable[i] ~ dunif(50, 100)
}
item <- rank(variable[], 1)
}
这意味着变量
的大约25个成分小于或等于1,而变量
的任何成分都不能小于1——由变量
值的后验分布证实:
mean sd MC_error val2.5pc median val97.5pc start sample
variable[1] 74.27 14.06 0.4417 51.51 73.73 98.96 1001 1000
variable[2] 74.32 14.29 0.5154 51.43 74.02 98.52 1001 1000
variable[3] 75.1 14.53 0.5623 51.34 75.2 99.07 1001 1000
variable[4] 75.78 14.41 0.3846 51.22 76.44 98.77 1001 1000
variable[5] 74.97 14.93 0.5557 51.24 74.8 99.18 1001 1000
variable[6] 75.13 14.61 0.4657 51.1 75.17 99.05 1001 1000
variable[7] 74.65 14.39 0.4296 51.58 74.44 98.57 1001 1000
variable[8] 75.01 14.28 0.4517 51.23 75.05 98.72 1001 1000
variable[9] 75.2 14.04 0.4309 52.09 74.83 98.7 1001 1000
variable[10] 75.3 14.47 0.4811 51.31 75.55 98.96 1001 1000
variable[11] 74.85 14.39 0.5504 51.55 74.65 98.7 1001 1000
variable[12] 74.85 14.42 0.4884 51.56 74.57 98.34 1001 1000
variable[13] 75.54 14.91 0.4995 50.95 76.14 98.97 1001 1000
variable[14] 75.43 14.46 0.4723 51.56 75.39 98.83 1001 1000
variable[15] 74.97 14.39 0.4658 51.14 75.58 98.74 1001 1000
variable[16] 75.39 14.46 0.5693 51.44 76.24 98.53 1001 1000
variable[17] 74.41 14.67 0.4356 51.03 73.34 98.78 1001 1000
variable[18] 75.09 14.22 0.3771 51.49 74.99 98.81 1001 1000
variable[19] 75.7 14.31 0.394 51.46 76.02 98.55 1001 1000
variable[20] 74.8 14.23 0.5463 51.64 75.12 98.86 1001 1000
variable[21] 74.83 14.56 0.4997 51.2 74.74 98.65 1001 1000
variable[22] 75.58 14.38 0.4412 51.38 76.6 98.3 1001 1000
variable[23] 74.64 14.42 0.4406 51.34 74.05 98.37 1001 1000
variable[24] 74.85 14.09 0.5247 51.6 74.72 98.96 1001 1000
variable[25] 75.48 14.39 0.4642 51.14 76.12 98.69 1001 1000
variable[26] 75.26 14.57 0.5391 51.18 75.07 98.92 1001 1000
variable[27] 74.49 14.5 0.4723 51.39 74.51 98.78 1001 1000
variable[28] 75.37 14.47 0.3562 51.09 75.5 98.64 1001 1000
variable[29] 74.64 14.37 0.4637 51.25 74.57 98.64 1001 1000
variable[30] 74.66 14.88 0.5224 51.1 74.73 98.83 1001 1000
variable[31] 75.48 14.31 0.4403 51.84 75.83 99.08 1001 1000
variable[32] 74.74 14.43 0.5379 51.1 74.07 99.13 1001 1000
variable[33] 74.67 14.33 0.4465 50.98 74.11 98.72 1001 1000
variable[34] 74.43 14.64 0.5293 51.05 73.72 99.05 1001 1000
variable[35] 74.51 14.44 0.4683 51.39 73.99 98.6 1001 1000
variable[36] 75.44 14.42 0.438 51.59 75.71 99.08 1001 1000
variable[37] 74.8 14.27 0.495 51.21 75.03 98.87 1001 1000
variable[38] 74.97 14.24 0.4463 52.05 75.64 98.73 1001 1000
variable[39] 74.82 14.67 0.5232 51.32 74.92 98.96 1001 1000
variable[40] 74.81 14.37 0.4862 51.3 74.58 98.79 1001 1000
variable[41] 74.77 14.51 0.3887 51.18 74.74 98.47 1001 1000
variable[42] 74.72 14.62 0.4296 51.35 74.37 98.66 1001 1000
variable[43] 75.18 14.12 0.4195 51.43 75.35 97.86 1001 1000
variable[44] 75.88 13.7 0.4136 51.86 76.14 99.0 1001 1000
variable[45] 74.6 14.2 0.3913 51.14 73.98 98.52 1001 1000
variable[46] 75.84 14.34 0.434 51.62 75.66 98.92 1001 1000
variable[47] 75.1 14.87 0.4791 51.13 75.11 99.07 1001 1000
variable[48] 75.06 14.14 0.4707 51.14 74.68 98.78 1001 1000
variable[49] 74.75 14.6 0.4521 51.3 74.4 98.93 1001 1000
variable[50] 75.2 14.36 0.4878 51.3 75.33 98.51 1001 1000
这里发生了什么?秩(u[],i)
返回u的第i个元素的秩
由于所有“变量”节点都是等效分布,因此rank()函数将返回一个值,该值(基本上)为for循环中元素数的1/2(在示例中为25)
Andrew Millard通过[BUGS]列表服务提供的
项:
OpenBugs手册给出了如下定义:
rank(v,s)
v小于或等于s的组件数
这就是我代码的基础,但手册是错误的,应该是错误的
秩(v,s)
小于或等于v的第s个分量的v的分量数
mean sd MC_error val2.5pc median val97.5pc start sample
variable[1] 74.27 14.06 0.4417 51.51 73.73 98.96 1001 1000
variable[2] 74.32 14.29 0.5154 51.43 74.02 98.52 1001 1000
variable[3] 75.1 14.53 0.5623 51.34 75.2 99.07 1001 1000
variable[4] 75.78 14.41 0.3846 51.22 76.44 98.77 1001 1000
variable[5] 74.97 14.93 0.5557 51.24 74.8 99.18 1001 1000
variable[6] 75.13 14.61 0.4657 51.1 75.17 99.05 1001 1000
variable[7] 74.65 14.39 0.4296 51.58 74.44 98.57 1001 1000
variable[8] 75.01 14.28 0.4517 51.23 75.05 98.72 1001 1000
variable[9] 75.2 14.04 0.4309 52.09 74.83 98.7 1001 1000
variable[10] 75.3 14.47 0.4811 51.31 75.55 98.96 1001 1000
variable[11] 74.85 14.39 0.5504 51.55 74.65 98.7 1001 1000
variable[12] 74.85 14.42 0.4884 51.56 74.57 98.34 1001 1000
variable[13] 75.54 14.91 0.4995 50.95 76.14 98.97 1001 1000
variable[14] 75.43 14.46 0.4723 51.56 75.39 98.83 1001 1000
variable[15] 74.97 14.39 0.4658 51.14 75.58 98.74 1001 1000
variable[16] 75.39 14.46 0.5693 51.44 76.24 98.53 1001 1000
variable[17] 74.41 14.67 0.4356 51.03 73.34 98.78 1001 1000
variable[18] 75.09 14.22 0.3771 51.49 74.99 98.81 1001 1000
variable[19] 75.7 14.31 0.394 51.46 76.02 98.55 1001 1000
variable[20] 74.8 14.23 0.5463 51.64 75.12 98.86 1001 1000
variable[21] 74.83 14.56 0.4997 51.2 74.74 98.65 1001 1000
variable[22] 75.58 14.38 0.4412 51.38 76.6 98.3 1001 1000
variable[23] 74.64 14.42 0.4406 51.34 74.05 98.37 1001 1000
variable[24] 74.85 14.09 0.5247 51.6 74.72 98.96 1001 1000
variable[25] 75.48 14.39 0.4642 51.14 76.12 98.69 1001 1000
variable[26] 75.26 14.57 0.5391 51.18 75.07 98.92 1001 1000
variable[27] 74.49 14.5 0.4723 51.39 74.51 98.78 1001 1000
variable[28] 75.37 14.47 0.3562 51.09 75.5 98.64 1001 1000
variable[29] 74.64 14.37 0.4637 51.25 74.57 98.64 1001 1000
variable[30] 74.66 14.88 0.5224 51.1 74.73 98.83 1001 1000
variable[31] 75.48 14.31 0.4403 51.84 75.83 99.08 1001 1000
variable[32] 74.74 14.43 0.5379 51.1 74.07 99.13 1001 1000
variable[33] 74.67 14.33 0.4465 50.98 74.11 98.72 1001 1000
variable[34] 74.43 14.64 0.5293 51.05 73.72 99.05 1001 1000
variable[35] 74.51 14.44 0.4683 51.39 73.99 98.6 1001 1000
variable[36] 75.44 14.42 0.438 51.59 75.71 99.08 1001 1000
variable[37] 74.8 14.27 0.495 51.21 75.03 98.87 1001 1000
variable[38] 74.97 14.24 0.4463 52.05 75.64 98.73 1001 1000
variable[39] 74.82 14.67 0.5232 51.32 74.92 98.96 1001 1000
variable[40] 74.81 14.37 0.4862 51.3 74.58 98.79 1001 1000
variable[41] 74.77 14.51 0.3887 51.18 74.74 98.47 1001 1000
variable[42] 74.72 14.62 0.4296 51.35 74.37 98.66 1001 1000
variable[43] 75.18 14.12 0.4195 51.43 75.35 97.86 1001 1000
variable[44] 75.88 13.7 0.4136 51.86 76.14 99.0 1001 1000
variable[45] 74.6 14.2 0.3913 51.14 73.98 98.52 1001 1000
variable[46] 75.84 14.34 0.434 51.62 75.66 98.92 1001 1000
variable[47] 75.1 14.87 0.4791 51.13 75.11 99.07 1001 1000
variable[48] 75.06 14.14 0.4707 51.14 74.68 98.78 1001 1000
variable[49] 74.75 14.6 0.4521 51.3 74.4 98.93 1001 1000
variable[50] 75.2 14.36 0.4878 51.3 75.33 98.51 1001 1000