Я использовал следующий код для вычисления логарифмической вероятности функции, в которой параметры x (x1, x2, x3, x4, x5) являются равномерно распределенными случайными числами между 0 и 1, но функция также зависит отзначения t (которое является вектором).
library(expm)
t <- seq(10,1000,by=5)
x1 <- runif(1,0,1)
x2 <- runif(1,0,1)
x3 <- runif(1,0,1)
x4 <- runif(1,0,1)
x5 <- runif(1,0,1)
p <- matrix(c(1,0,0), nrow=1, ncol=3, byrow=TRUE)
q <- matrix(c(x1,x2,x3), nrow=3, ncol=1, byrow=TRUE)
likely <- vector()
for (i in 1:length(t)) {
likely[i] <- p%*%expm(matrix(c(-(x4+x1)*t[i],x4*t[i],0,0,-(x5+x2)*t[i],x5*t[i],0,0,-x3*t[i]), nrow=3, ncol=3, byrow=TRUE))%*%q
}
log.likely <- vector()
for (i in 1:length(t)) {
log.likely[i] <- log(likely[i])
}
L3 <- -(sum(log.likely))
L3
Мой вопрос: как мне выполнить этот код, скажем, 100 раз для различных значений параметров x?У меня уже есть цикл в коде для запуска через различные значения t.Но теперь мне нужно перебрать различные значения x1, x2, x3, x4 и x5.Любая помощь будет принята с благодарностью!