【问题标题】:how do i fill the entries of this matrix in R?我如何在 R 中填充这个矩阵的条目?
【发布时间】:2011-03-20 22:13:24
【问题描述】:

给定:

h_i=t_(i+1)-t_i for i=1,...,n-1 where n is a positive integer.

矩阵Q 是一个n by (n-2) 矩阵,其中条目q_(i,j)i=1,...,nj=2,...n-1 由以下给出:

q_(j-1,j)=1/h_(j-1)
q_(j,j)=-(1/h_(j-1)+1/h_j)
q_(j+1,j)=1/h_j
q_(i,j)=0 for |i-j|>=2

我想得到一个矩阵Q。我如何在 R 中为这个矩阵编写程序?多谢提前。

【问题讨论】:

    标签: r matrix loops


    【解决方案1】:

    如果我正确地计算出下标,我认为这会做到:

    n <- 100
    t <- sort(runif(n))
    h <- diff(t)
    Q <- matrix(0,n,n-2)
    Q[row(Q)==col(Q)-1] <- 1/h[1:(n-3)]
    Q[row(Q)==col(Q)+1] <- 1/h[1:(n-2)]
    diag(Q) <- c(NA,-1/h[1:(n-3)] - 1/h[2:(n-2)])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-15
      • 1970-01-01
      相关资源
      最近更新 更多