我有两个矩阵Ac和Ep和一个参数k,我需要实现这个矩阵,它是我之前的矩阵和k的函数:
ProbEnt(k)[i,j] := if (k < wmax) then binomial(Ac[i,j], k)*Ep[i,j]^k * (1-Ep[i,j])^(Ac[i,j]-k) else 0;
由于某些原因,它不允许我定义(构建)ProbEnt参数。有办法解决这个问题吗?
看起来函数genmatrix
可能适合您。genmatrix
的第一个参数是一个函数,它接受两个参数,i
和j
,您可以使用它们来定义您想要的i, j
元素。
在这种情况下,它可能是像
这样的东西myfunction (i, j) := if k < wmax then <stuff about Ac and Ep here> else 0);
genmatrix (myfunction, mm, nn);
其中mm
和nn
是您想要的行数和列数。