Я имитирую рост растений в r.
Вектор A - это вектор размером 10x1, который содержит значение для массы растения. Каждая строка представляет час. В нулевой час первая строка установлена на 5, а остальные 9 состоят из нулей. В каждом часовом интервале новая переменная добавляется в следующую доступную строку.
A=matrix(nrow=10,ncol=1,0)
A[1]=5 #setting the plant's mass at time zero
В каждый временной интервал я хочу использовать массу растений в начале интервала как постоянную, а затем повторно вычислить новую массу в конце интервала.
Я создал функцию, которая использует массу растений из вектора A в качестве константы следующим образом:
```{r} StartRespire=function(A,Respira=66.7,Cgain){ #note Cgain is a constant determined in another loop
RespCost=A*Respira
if(RespCost>Cgain){
NewA=0
print("Not enough C for respiration. Plant dies")
}
else{
NewA=A*Cgain }
return(list(NewA=NewA))
}
Мои вопросы:
- Возможно ли, чтобы функция автоматически выбирала последнее ненулевое значение в векторе A?
- Есть ли способ сделать так, чтобы функция определяла NewA как следующее доступное значение (добавьте к следующий ряд)