リストのリストから作成した行列を操作するのに問題があります。結果の行列が通常の行列のように動作しない理由を私は実際に理解していません。つまり、ベクトルを返すために列のサブセットを作成するときに、代わりにリストを取得すると思います。ここに実例があります:リストのリストから作成した行列のサブセット
x = list()
x[[1]] = list(1, 2, 3)
x[[2]] = list(4, 5, 6)
x[[3]] = list(7, 8, 9)
y = do.call(rbind, x)
y
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
y
は私が期待するフォーマットです。最終的に私はこれらの行列の平均を求めたいと思いますが、この行列を部分集合化するとベクトルの代わりにリストが得られるという事実が原因です。
y[,1]
[[1]]
[1] 1
[[2]]
[1] 4
[[3]]
[1] 7
これはどうして起こっているのですか? b)どのように私はこの問題を回避/解決できましたか?
ありがとうございます。
なぜリストのリストから作られた行列がベクトルのリストと異なったものになるのでしょうか? 私が前提にしていたのは、それが行列であれば行列のように動作するということでした。おそらくマトリックスのサブタイプがあるでしょうか? – SamPassmore