替代实时序列数据

时间:2019-06-04 09:59:48

标签: r for-loop

在使用for循环计算增长率和产量时,我使用了平均温度值。但是现在我每天都有不同的体温。 “温度”是否可以使用给定的每日温度而不是平均温度?

exp <- expand.grid(
MetalA=6E-9,
MetalB=5e-6,
Biomass=1)

Temp = 1.89
Growth_rate = 0.5
Spd = 86400
Basal_respiration = 1.066

model <- function(days = 10, timestep = 432, Production) {

init <- rep(NA_real_, n_steps+1)
init[1] <- 0.
Production <- init

for (time in seq_len(n_steps)){

Temp_Sensitivity = Growth_rate^Temp
Max_growth = (Growth_rate*Temp_Sensitivity)/spd #growth rate in  seconds per day

 Production[time] = Max_growth * Biomass [time]

 dProduction_dt = Production[time]

 dt <- 200

 Production[time+1] = Production[time] + dProduction_dt * dt

}
data.frame(MetalA=MetalA, MetalB=MetalB, Biomass=Biomass, Temp=Temp, Production=Production)
}

days <- 10
timestep <- 432

exp_results <- list()

for (i in 1:nrow(exp)) {
this_params <- exp[i, ] 

exp_results[[length(exp_results)+1]] <- model(days = days, rday = rday, MetalA = this_params$MetalA, MetalB = this_params$MetalB, Temp = this_params$Temp,  Temp = this_params$Temp, Biomass = this_params$Biomass)

}

时间步长是432,所以需要200秒块。

我现在有10天的体温 温度= c(1,2,1,3,2,1.5,2,3,1,2.4)

是否可以替代温度以在一段时间内使用这10个温度,而不是之前给出的“平均”值(1.89)?

使用温度= c(1,2,1,3,2,1.5,2,3,1,2.4)是每天,而不是每个时间步... 我尝试使用Temp [i],但出现错误

data.frame中的错误(MetalA = MetalA,MetalB = MetalA,生物质=生物质,:   参数暗示不同的行数:4321、1、10

我希望温度使用各个每日温度值

0 个答案:

没有答案