那么,我想做什么?
我想迭代一个表达式 n 次并将其添加到向量 x 中,然后我想更改一个参数( r )然后再次进行迭代,然后将这些元素添加到相同的向量中,而不会丢失有关先前迭代的信息。
我尝试了什么?
while(rmin<=rmax){
while(cont!=n){
y=rmin*x*(1-x)
x=y
vec[cont]<-x
cont=cont+1
}
for (i in n:length(vec)){
plotvec[i] <- vec[i]
}
cont=0
rmin=rmin+rstep
}
因此,由于我不知道如何继续向向量 vec 添加数字,因此我创建了另一个称为 plotvec 的向量,该向量在代码离开第二个< em> while ,它应该接收所有 vec 值。
我想知道的事情 如何使其工作,因为事实并非如此。以及如何使其更加清晰典雅。作为一名编码初学者,如果可能的话,我会要求不要使用花哨的解决方案。
我期望得到什么结果 使用这些参数和条件:
rmin<-2.4
rmax<-4.0
rstep<-0.01
n<-1000
x<-0.2
y<-0
i<-0
cont<-0
vec<-numeric()
plotvec<-numeric()
要获得包含所有数据的向量,我需要绘制一个双向视图。我的目的是针对
非常感谢您。
答案 0 :(得分:0)
好吧,我设法解决了我的问题(我本来是想一些更简单的事情),但是现在我遇到了一个新问题。
首先,我提出了解决方案(idk,也许将来有人会觉得有用)
while(rmin<=4){
while(cont!=n){
y=rmin*x*(1-x)
x=y
vec<-c(vec,x)
cont=cont+1
}
rmin=rmin+rstep
cont=0
}
我得到的结果是:bifucation diagram result
但是我希望在X轴上有一个从2.4到4的序列。所以我创建了一个像这样的序列:
xlabel <- seq(from=2.4, to=4, by=0.01)
但是我绘制时得到的结果不是我期望的
plot(cbind(xlabel,vec),xlab="R", ylab="X")