У меня есть следующее MWE:
library(ggplot2)
N <- 199
K <- N+1
x <- rep(0,N)
x[1] <- 0.5
time <- c(1:K)
G <- c(2.7, 2.9, 3.0, 3.5, 3.82, 3.83, 3.84, 3.85)
g <- 2.7
for (t in 1:N) {
x[t+1] = g*x[t]*(1-x[t])
}
plot(time,x)
В этом коде G
не используется и является вектором значений для g
. В настоящее время у меня есть участок для первого значения g=2.7
. То, что я хочу сделать, это l oop через значения G
и создать отдельные графики для каждого. У меня есть следующий код, с которым я пытаюсь сделать это:
for (g in G) {
x_g <- N+1
x_g[1] <- 0.5
for (t in 1:N) {
x_g[t+1] = g*x_g[t]*(1-x_g[t])
plot(time,x_g)
}
}
Это выдает следующее сообщение об ошибке:
Error in xy.coords(x, y, xlabel, ylabel, log) :
'x' and 'y' lengths differ
Я пытаюсь создать отдельные переменные x_g
как Я не могу понять, как «стереть» значения x
из исходного кода. Я думаю:
- Использование
for(g in G)
l oop неправильно - Использование неправильного подхода с использованием отдельных
x_g
переменных
Любые советы о том, как подойти к этому / сделать это правильно? Я не знаком с использованием матриц в R, это верный способ решения этих проблем?