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 に答える