これまでと同様の質問をしました。しかし、これは少し難しいです。私は、不定方程式x1+x2+x3 = 8
にPOSITIVE INTEGER解(以前は非負解)行列(例えばA
)を持っています。また、私は列不定方程式の正の整数解を使って行列を生成する
0 1 0 1
0 0 1 1
と別の行列(B
発言を)持っている私はA
の行を使用して行列とB
の列を生成したいです。
たとえば、(2,2,4)
は、行列A
の1つの解決策(1行)です。この場合は、rep
を使用できません。だから行列B
から3列の行列をすべて生成してから、rep
を適用しようとしましたが、それを理解できませんでした。次の行を使用して、3つの列行列すべてのリストを生成します。例えば
cols <- combn(ncol(B), 3, simplify=F, FUN=as.numeric)
M3 <- lapply(cols, function(x) cbind(B[,x]))
、cols[[1]] [1] 1 2 3
その後、私の新しい行列の列は、この新しい行列の
0 0 1 1 0 0 0 0
0 0 0 0 1 1 1 1
列だろうB.すなわち、最初の列の列の倍数であります2回目、2回目、2回目、3回目の4回を繰り返す。この手順を行列Aのすべての行に使いたいのですが、どうすればいいですか?