1

R でマークダウンを作成しようとすると、次のエラー メッセージが表示されます。

"Error in jags.model(model.file, data = data, inits = inits.values, n.chains = n.chains, : Nothing to compile calls: <Anonymous>... withVisible -> eval -> jags -> jags.model ->. Call In addition: Warning message: In sink() :  no sink to remove Execution halted."

コードは問題なく実行されます。問題は、編もうとしたときだけです。私が持っているコードは次のとおりです。

library(R2jags)

setwd("~/[...]")
getwd()

#Model:    

sink("model1.txt")
cat("
    model
    {
    for(i in 1:N){
        y[i] ~ dnorm(mu[i],tau)
        mu[i] <- alpha + beta * (x[i]-x.bar)
        }
        alpha ~ dnorm(0, 0.0001)
        beta ~ dnorm(1,1)
        tau ~ dgamma(.25,.25)
    sigma <- 1/sqrt(tau)
    }
    ",fill = TRUE)
sink()

#Data:

x     = c(1,2,3,4,5)
y     = c(1,3,3,3,5)
N     = 5 
x.bar = 3
jags.data = list("x","y","N","x.bar")

#Parameters:

jags.params = c("alpha", "beta", "tau", "sigma")

#Initial Values:

jags.inits = function(){
    list("alpha" = 0, "beta" = 1, "tau" = 1)
}

#Fit Model:

lab1.sim = jags(jags.data, jags.inits, jags.params, 
              model.file = "model1.txt", 
              n.chains = 3, n.iter = 11000, n.burnin = 1000)

Windows 10、Rx64 3.2.3、および RStudio 0.99.903 を使用しています。

4

1 に答える 1

0

マークダウンを編成しようとすると、シンクが実行され、モデル コードで .txt が作成され、上書きされます。Markdown は .txt を台無しにして、後で編むたびに空のファイルにします。そのため、コンパイルするものは何もなく、そのエラーが発生します。

解決策: コンソールで sink(...) を実行して .txt を作成し、マークダウン ソースでコメント アウトします。

于 2016-10-13T19:12:54.347 に答える