在 R 中形成一个维度为 100x100 的矩阵 (a^|i-j|)

  • 本文关键字:i-j 100x100 一个 r
  • 更新时间 :
  • 英文 :


如何在R中形成维度为100x100的矩阵(a^|i-j|(?类似于 矩阵(向量,nrow = 100,ncol = 100(

您可以使用如下slice.index

x  <- matrix(NA_real_, 100, 100)
x <- 0.1^abs((slice.index(x, 1) - slice.index(x, 2)))

我们可以使用outer

m1 <- outer(1:100, 1:100, FUN = function(i, j) 0.1^abs((i-j)))
dim(m1)
#[1] 100 100

或者另一种选择是sapply

m2 <- 0.1^(sapply(1:100, function(i) abs(i - 1:100)))
all.equal(m1, t(m2))
#[1] TRUE

这是一个使用outer()创建此类矩阵的解决方案

M <- (a<-0.1)**abs(outer(1:100,1:100,"-"))

最新更新