1 つのリスト (myList など) に 2 つの行列 (S と P など) を作成したいと考えています。これらはそれぞれバイナリ値を取ることができ、次のような対角行列です (T は TRUE を表し、F は FALSE を表します)。
S:
S1 S2
T F
F T
P:
P1 P2 P3
T F F
F T F
F F T
そして、これら 2 つの変数のすべての組み合わせをバイナリ形式で表示できるマトリックス (または data.frame) を作成したいと考えています。たとえば、次のようになります。
S1 S2 P1 P2 P3
T F T F F
T F F T F
T F F F T
F T T F F
F T F T F
F T F F T
F F T F F
F F F T F
F F F F T
別のリストに各マトリックスのサイズがあります: myMatrixSizes
Rでこれを行うにはどうすればよいですか?
私はこれを試しましたが、結果は私が望む形ではありません:
lapply(
lapply(
c(myList),
function(y) Diagonal(myMatrixSizes(y,myList)])==1
),
function(x) lapply(x,2, rep, prod(myMatrixSizes)/ dim(x)[1])
)
ありがとう!