簡體   English   中英

在R中使用for循環填充矩陣不起作用

[英]Fill Matrix with a for loop in r not working

我將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

請幫忙。

您在定義中忘記了一些括號。 這確實有點令人困惑

 for(i in 2:(N+1)){
   for(j in 1:(i-1)){

似乎還有更多錯誤,但是我不確定您的代碼的意圖。 基本上在內部循環之后, j將評估為零,這將在其中索引

s[i,j] <- (s[i-1,j-1]*d)

不存在的元素0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM