Применение цикла for к нескольким векторам

Я пытаюсь повторить цикл for, в котором вызываются 3 разных вектора. В частности, я пытаюсь посмотреть, сколько времени требуется различным сайтам, чтобы достичь своей пропускной способности. По сути, я хочу определить, сколько времени требуется разным популяциям, чтобы достичь своей несущей способности.

На данный момент я настроил его для успешной печати изобилия на разных временных шагах.

tspan <- 80
N <- matrix(0,tspan,1)
N[1] <- 20
K <- 13626
r <- 0.32

for (t in 2:tspan){
    N[t] <- N[t-1]*exp(r*(1-N[t-1]/K))
    print(N)
  }

Хотя даже это приводит к выводу одного и того же вектора, распечатанного N=tspan раз. Конечная цель здесь состоит в том, чтобы повторить описанный выше цикл for по вектору с разными значениями K:

K<-c(208, 543, 557, 831, 831, 878, 933, 970, 1022, 1039)

а затем сохранить все это во фрейме данных. Я пытался использовать вложенный цикл for, но я не уверен, как это сделать, поскольку все необходимые значения являются ссылками в уравнении 1. Любая помощь будет принята с благодарностью.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
3
0
78
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать sapply

K <- c(208, 543, 557, 831, 831, 878, 933, 970, 1022, 1039)
out <- sapply(K, function(x) {
  for (t in 2:tspan){
    N[t] <- N[t-1]*exp(r*(1-N[t-1]/x))
  } #                              ^ note the x instead of K here 
  N
})

Результат

head(as.data.frame(out))
#        V1       V2       V3       V4       V5       V6       V7       V8       V9      V10
#1 20.00000 20.00000 20.00000 20.00000 20.00000 20.00000 20.00000 20.00000 20.00000 20.00000
#2 26.70800 27.21983 27.22790 27.33125 27.33125 27.34252 27.35427 27.36143 27.37062 27.37342
#3 35.29968 36.88868 36.91432 37.24457 37.24457 37.28077 37.31856 37.34160 37.37119 37.38022
#4 46.04258 49.70798 49.76899 50.56016 50.56016 50.64751 50.73882 50.79455 50.86620 50.88810
#5 59.07051 66.47804 66.60632 68.28529 68.28529 68.47241 68.66838 68.78819 68.94243 68.98963
#6 74.28092 88.03152 88.28178 91.59706 91.59706 91.97116 92.36397 92.60462 92.91501 93.01011

Другие вопросы по теме