R中的散点图
我在蒙地卡罗课堂上重新做了一些作业,以此来自学R。我在R中构建了一个RANDU生成器,我的任务是为序列中的所有三元组(u_I,u_{I+1},u_{I+2})计算,其中0.5我认为问题在于你在R中的散点图,r,R,我在蒙地卡罗课堂上重新做了一些作业,以此来自学R。我在R中构建了一个RANDU生成器,我的任务是为序列中的所有三元组(u_I,u_{I+1},u_{I+2})计算,其中0.5我认为问题在于你在u中的最后一次观察。至于你的for循环,你要求评估u[i+1]。试试这个: for(i in 1:length(u)-1){ if(0.5 <= u[i+1] & u[i+1] <= 0.51){ plot(u[i],u[i+2]) } } for(i/1:长
u
中的最后一次观察。至于你的for
循环,你要求评估u[i+1]
。试试这个:
for(i in 1:length(u)-1){
if(0.5 <= u[i+1] & u[i+1] <= 0.51){
plot(u[i],u[i+2])
}
}
for(i/1:长度(u)-1){
如果(0.5)参数0.5,我认为这里的问题是由于NA
值造成的。您正在尝试索引u[I+1]
,这将导致它返回一个值的NA(当I=length(u)
时)。当您尝试打印u[I+2]
时,同样的情况也会发生。尝试更改索引,看看它是否有效。.if(0.5)中的错误
n = 20002
x <- 1:n
x[1] = 1
for(i in 2:n){
x[i] = (65539*x[i-1]) %% 2^31
}
u <- 1:n
u[1] = 1/(2^31)
for(i in 2:n){
u[i] = x[i]/(2^31)
}
for(i in 1:length(u)){
if(0.5 <= u[i+1] & u[i+1] <= 0.51){
plot(u[i],u[i+2])
}
}
for(i in 1:length(u)-1){
if(0.5 <= u[i+1] & u[i+1] <= 0.51){
plot(u[i],u[i+2])
}
}