Compiler errors JAGS编译错误

Compiler errors JAGS编译错误,compiler-errors,jags,Compiler Errors,Jags,我看似简单的模型不断地给我带来奇怪的编译错误 运行时错误: 第17行出现编译错误。 未知变量Nx 使用数据提供此变量的值,或在关系的左侧定义它 这是我的密码: dataList = list( x = x , y = y , xP = xProbe ) Here's the JAGS model: 1 data{ 2 Ntotal <- length(y) 3 ym <- mean(y) 4 ysd <

我看似简单的模型不断地给我带来奇怪的编译错误

运行时错误:
第17行出现编译错误。
未知变量Nx
使用数据提供此变量的值,或在关系的左侧定义它

这是我的密码:

dataList = list(
  x = x ,
  y = y ,
  xP = xProbe
)

Here's the JAGS model:  
1    data{  
2        Ntotal <- length(y)  
3        ym <- mean(y)  
4        ysd <- sd(y)  
5        for ( i in 1:Ntotal ) {  
6          zy[i] <- ( y[i] - ym ) / ysd  
7        }  
8        Nx <- length(xName)  
9        for ( j in 1:Nx ) {  
10         xm[j]  <- mean(x[,j])  
11         xsd[j] <-   sd(x[,j])  
12         for ( i in 1:Ntotal ) {  
13           zx[i,j] <- ( x[i,j] - xm[j] ) / xsd[j]  
14         }  
15       }  
16       Nprobe <- Ntotal  
17       for ( j in 1:Nx ) {  
18         xPm[j]  <- mean(xP[,j])  
19         xPsd[j] <-   sd(xP[,j])  
20         for (i in 1:Nprobe ) {  
21           zxP[i,j] <- ( xP[i,j] - xPm[j] ) / xPsd[j]  
22         }  
23       }  
24   }  
25   model{  
26       for ( i in 1:Ntotal ) {  
27         zy[i] ~ dt( zbeta0 + sum(zbeta[1:Nx]*zx[i,1:Nx]), 1/zsigma^2, nu)  
28       }  
29      # Priors vague on standardized scale:  
30       zbeta0 ~ dnorm( 0 , 1/2^2 )     
31       for ( j in 1:Nx ) {  
32         zbeta[j] ~ dnorm( 0 , 1/2^2 )  
33       }  
34       zsigma ~ dunif( 1.0E-5 , 1.0E+1 )  
35       nu ~ dexp(1/30.0)  
36      # Transform to original scale:  
37       beta[1:Nx] <- ( zbeta[1:Nx] / xsd[1:Nx] )*ysd  
38       beta0 <- zbeta0* ysd + ym - sum(zbeta[1:Nx]*xm[1:Nx]/xsd[1:Nx])*ysd  
39       sigma <- zsigma*ysd  
40      # Predicted y values as xProbe:  
41       for ( i in 1:Nprobe ) {  
42         zyP[i] ~ dt(zbeta0+sum(zbeta[1:Nx]*zxP[i,1:Nx]),1/zsigma^2, nu)  
43         yP[i] <- zyP[i] * ysd + ym  
44       }  
45   }  
dataList=list(
x=x,
y=y,
xP=xProbe
)
以下是JAGS模型:
1数据{

2 Ntotal第8行似乎没有定义
xName
是什么,
Nx
依赖于它。在
dataList
中定义它,你就可以开始了(关于修复这个单一错误).

我只是想知道为什么JAGS没有先在第9行给出相同的错误。JAGS不会逐行运行脚本,循环也不会按顺序执行。