如何解决eval(substitute(expr), data, enclos = parent.frame()) 中的错误:
我是 r 的新手,我正在尝试使用 SIR 模型从 Rudolf 2007 中重现此图 graph
这是我目前所写的。我不明白为什么我不断收到错误“在 eval(substitute(expr),data,enclos = parent.frame()) 中出错: 缺少参数“g”,没有默认值“
library("deSolve")
sir_equations <- function(time,variables,parameters,g) {
with(as.list(c(variables,parameters)),{
dS <- b * N + e * a * N^2 - a *N * S - lambda * a * g * I * S - d * S
dI <- lambda * a * g * I * S - a * N * I - ( d + v) * I
dG <- d * S + (d + v) * I
return(list(c(dS,dI,dG)))
})
}
parameters_values <- c(
N = 300,b = 1,e = 0.05,lambda = 0.3,a = 0.01,d = 0.8,v = 0.5,g = seq(1,20,2)
)
initial_values <- c(
S = 299,I = 1,G = 0
)
time_values <- seq(0,17,0.01) # days
sir_values_1 <- ode(
y = initial_values,times = time_values,func = sir_equations,parms = parameters_values
)
sir_values_1 <- as.data.frame(sir_values_1)
sir_values_1
with(sir_values_1,{
plot(g,S,type = "l",col = "blue",xlab = "g",ylab = "S")
})```
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。