我正在尝试运行我一年多前编写的一些代码,但由于某种原因,这次它无法正常工作。以前我将矩阵变量 alpha 和 prob 输入到 R 中。但是这次我将它们作为 csv 文件导入,因此每次迭代都可以更轻松地修改它们。我目前正在运行 R x64 2.12.2。我加载了 gtools、splines 和 stat4 包。
alpha <- read.csv("AlphaOriginal.csv", header = FALSE)
prior <- array(0,c(45,45))
for (j in 1:45) prior[j,] <- rdirichlet(1,alpha[j,])
prob <- read.csv("ProbOriginal.csv", header = FALSE)
data <- array(0,c(45,45))
for (i in 1:45) data[i,] <- rmultinom(1,1,prob[i,])
posterior <- data%*%prior
write.table(posterior, file = "PosteriorOriginal.csv", row.names = FALSE, na = "", col.names = FALSE, sep = ",")
在 rdirichlet 行之后,我收到以下错误。
Error in rgamma (1*n, alpha) : invalid arguments
有谁知道这个错误是什么意思以及如何解决它?谢谢