计算 R 中矩阵的常量

Ale*_*ikh 5 r matrix permanent

如何在 R 中找到方阵(一般尺寸为 nxn)的常量?特别是,我试图找到独立但分布不同的群体的阶次统计的 pdf,其中包括计算矩阵的常量,该矩阵的元素是原始群体的 pdf 和 cdf

谢谢

Ben*_*ker 5

tl;dr这是一个不平凡的计算问题,似乎没有在 R 中实现,并且计算难度很大,可能需要编译解决方案。最好的选择是编写 R 代码来包装这个开源 C 实现。

根据相关的维基百科文章,“Ryser”看起来是一个很好的搜索术语,可以用来查找此计算的实现。仅找到Spearman 等级相关性library("sos"); findFn("Ryser")的帮助,其中表示

计算 Spearman 等级相关统计量的精确零分布在 n 中呈指数级困难。该软件包使用预先计算的 n <= 22 的精确分布,该分布是通过应用于适当的单项式永久的 Ryser 公式获得的。

这甚至不是一般的实现,而是一种特殊情况。 谷歌搜索“permanent Ryser”并没有找到任何实现,直到我们到达这里,这是 MATLAB 代码。谷歌搜索“永久 Ryser 实现”会出现这个 CodeProject 页面,该页面提供了在相当宽松的Code Project Open License下获得许可的相当简单的 C 代码。