我正在使用R代码。 我正在尝试使用for循环填充矩阵,如下所示。我的输出没有达到预期,实际上没有任何元素被填充。请帮忙。提前谢谢。
N<- 3
S<- 2
delta = T / N
u = 2
d = 1 / u
s<- matrix(NA,N+1,N+1, byrow = TRUE)
s[1,1]<- S
for(i in 2:N+1){
for(j in 1:i-1){
s[i,j] <- (s[i-1,j]*u)
}
s[i,j] <- (s[i-1,j-1]*d)
}
s
My output
> s
[,1] [,2] [,3] [,4]
[1,] 2 NA NA NA
[2,] NA NA NA NA
[3,] NA NA NA NA
[4,] NA NA NA NA
请帮忙。
答案 0 :(得分:0)
你的定义中忘了几个括号。这确实有点令人困惑
for(i in 2:(N+1)){
for(j in 1:(i-1)){
似乎有更多错误,但我不确定您的代码的意图。基本上在内部循环j
将评估为零之后将在
s[i,j] <- (s[i-1,j-1]*d)
不存在的元素0