从命令行或脚本使用 jags.parallel 工作正常。我可以从http://www.inside-r.org/packages/cran/R2jags/docs/jags运行这个修改过的例子就好了
# An example model file is given in:
model.file <- system.file(package="R2jags", "model", "schools.txt")
#=================#
# initialization #
#=================#
# data
J <- 8.0
y <- c(28.4,7.9,-2.8,6.8,-0.6,0.6,18.0,12.2)
sd <- c(14.9,10.2,16.3,11.0,9.4,11.4,10.4,17.6)
jags.data <- list("y","sd","J")
jags.params <- c("mu","sigma","theta")
jags.inits <- function(){
list("mu"=rnorm(1),"sigma"=runif(1),"theta"=rnorm(J))
}
#===============================#
# RUN jags and postprocessing #
#===============================#
# jagsfit <- jags(data=jags.data, inits=jags.inits, jags.params,
# n.iter=5000, model.file=model.file)
# Run jags parallely, no progress bar. R may be frozen for a while,
# Be patient. Currenlty …Run Code Online (Sandbox Code Playgroud) 我试图计算每个组中不同值的比例,但我不想为组创建“新”行,而是创建新列。
以上面第二个问题为例。如果我有以下数据:
data <- structure(list(value = c(1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L,
2L, 2L, 2L, 3L, 3L, 3L, 3L), class = structure(c(1L, 1L, 1L,
2L, 2L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 1L, 1L, 1L), .Label = c("A",
"B"), class = "factor")), .Names = c("value", "class"), class = "data.frame", row.names = c(NA,
-16L))
Run Code Online (Sandbox Code Playgroud)
我可以计算每个类 (A,B) 中每个值 (1,2,3) 的比例:
data %>%
group_by(value, class) %>%
summarise(n = n()) %>%
complete(class, fill = …Run Code Online (Sandbox Code Playgroud)