0

基本的な計算を自動化する関数を作成しようとしています。matただし、関数に埋め込まれたコードが関数の外部に配置されたときに完全に機能する場合でも、最終的なオブジェクトを定義していないようです。明らかに基本的なエラーを実行していますが、何が問題なのかわかりません。

コードは次のとおりです。

my_f = function(covs, B, k) { 

  ### empty matrix

  coeff <- paste("b_", covs, sep="")
  se <- paste("se_", covs, sep="")
  mat <- matrix(nrow=B, ncol=2+2*k, dimnames=list(c(), c("sim","N",coeff,se)))
  mat[,"sim"] <- seq(1:B) 

} 

 my_f(covs=list("x1", "x2"), B=50, k=2)

助けてくれてありがとう!

4

1 に答える 1

3

何を返したいのかは明確ではありませんがreturn(mat)、関数の最後の行を忘れたと思います。

現在myf定義されているように、最後に評価されたもの、m[, "sim"]つまりベクトルのみが返されます(したがって、マトリックスの残りの部分は忘れられます)。

また、の結果をmy_f変数に割り当てる必要があります(これは、名前を付けることもできますが、そうである必要はありませんmat)。

mat <- my_f(covs=list("x1", "x2"), B=50, k=2)
于 2013-01-09T02:51:18.663 に答える