1

我想得到一个返回矩阵的函数。

mat1 <- function(k)
{
  mat2 <- matrix( 0, ncol = 664, nrow = 182 )
  for (i in 1:664)
  {
    mat2[,i] <- weight0.0025(i,k)
  }
}

其中 weight0.0025 是一个返回 182 长向量的函数,但不知何故这不起作用。

更令人沮丧的是

mat2 <- matrix( 0, ncol = 664, nrow = 182 )
for(i in 1:664)
{
  mat2[,i] <- weight0.0025(i,k)
}

按预期工作。

我知道我可以以 3 维数组的形式编写,但我需要在 k 上进行优化。

4

1 回答 1

4

您的函数需要一个 return 语句。

mat1 <- function(k){
  mat2 <- matrix(0, ncol = 664, nrow = 182)
  for (i in 1:664){
    mat2[,i] <- weight0.0025(i,k)
  }
  return(mat2)
}
于 2013-07-18T11:23:27.667 回答