我想在一个列表(比如 myList)中创建两个矩阵(比如 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
然后我想创建一个矩阵(或 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])
)
谢谢!