2 つのベクトルで mapply を使用して名前付きリストを作成する方法はありますか? 最初のベクトルは型characterで、リストに使用される名前を含み、2 番目のベクトルには値が含まれます。
これまでのところ、私が持っている唯一の解決策は次のとおりです。
> dummyList = list()
> addToList <- function(name, value) {
+ dummyList[[name]] <- value
+ }
> mapply(addToList, c("foo", "bar"), as.list(c(1, 2))
$foo
`1`
$bar
`2`
これはかなり不自然な解決策のように思えますが、それ以外の方法がわかりません。私が抱えている問題は次のとおりです。
dummyListの呼び出し後は変更されずdummyList、空のリストですが、 を作成する必要がありmapplyます。数値ベクトル
c(1, 2)がリストに変換されない場合、 への呼び出しの結果はmapplydouble の名前付きベクトルになります。
問題 2 を回避するには、いつでもmapply2 つのベクトルを呼び出しas.listてから結果を呼び出すことができますが、値がベクトルに含まれるリストを直接作成する方法が必要なようです。