のリストからすべての要素をrbinding(DFS、行列、ベクトル、など)私はこのようなリストのリストを持っている:私は最初の名前を追加しているしたいと思っ何命名し、リスト
# output from a package function
A <- list(a = matrix(1:9,ncol=3),
b = matrix(1:8,ncol=4),
c = 1.5)
B <- list(a = matrix(11:19,ncol=3),
b = matrix(11:18,ncol=4),
c = 2.5)
# list with all outputs (from loaded=lapply(filenames, function(x) get(load(x))))
superlist <- list(A, B))
各リストアイテム(A、B)をすべての2次リスト要素に割り当てる。例えば、Bはなる:
B <- list(a = cbind(matrix(11:19,ncol=3),c("B","B","B")),
b = cbind(matrix(11:18,ncol=4),c("B","B")),
c = c(2.5,"B"))
そして、その目的は、(A、B、C)と同じ名前を一緒にすべての行列、値またはデータフレームをrbindすることで、私が持っているであろうように:
superlist <- list(a = rbind(cbind(matrix(1:9,ncol=3),c("A","A","A")),cbind(matrix(11:19,ncol=3),c("B","B","B"))),
b = rbind(cbind(matrix(1:8,ncol=4),c("A","A")),cbind(matrix(11:18,ncol=4),c("B","B"))),
c = rbind(c(1.5,"A"),c(2.5,"B")))
do.call("rbind",lapply(superlist ,function(x) x[["a"]]))
しかし、それは唯一のリスト要素のためにそれをしない(と私は20以上のものを持っている):rbinding用
は、私が得た最高のは、この(rbind all dataframes in a list of lists by nameから)です。私はループを書くことができることを知っていますが、私がこの機能を頻繁に使用するようになると、これをもっとうまくやる方法を知りたいと思います。
これについて複数の質問がありますが、どれも全く同じ問題がないことを認識しています(たとえば、リスト要素のリストとしてのデータフレーム、場合によってはすべて同じサイズのデータフレームのみ)。だから、特定の質問が少しの助けをもたらしたにもかかわらず、本当に私の問題を解決するのに十分な情報をくれた人はいなかった。第二のリストではなく、最初の
あなたは
"まず、各リスト項目(A、B)の名前を2番目のすべてのリスト要素に追加します。 - しないでください。 'cbind(行列11:19、ncol = 3)、c(" B "、" B "、" B "))のような名前の文字をデータの中に混入させようとしています。 – Frank