Rで(一般的な次元nxnの)正方行列のパーマネントを見つけるにはどうすればよいですか? 特に、独立しているが同一分布ではない母集団の順序統計のpdfを見つけようとしています。これには、要素が元の母集団のpdfとcdfsである行列のパーマネントの計算が含まれます
ありがとう
tl;drこれは、Rで実装されていないように見える重要な計算問題であり、コンパイルされたソリューションが必要になる可能性があるほど計算が困難です。最善の策は、このオープン ソースの C 実装をラップする R コードを作成することです。
関連するウィキペディアの記事に基づくと、「Ryser」は、この計算の実装を見つけるための適切な検索用語のようです。スピアマンの順位相関 のlibrary("sos"); findFn("Ryser")
ヘルプのみが見つかります。
Spearman の順位相関統計の正確な帰無分布の計算は、n では指数関数的に困難です。このパッケージは、適切な単項パーマネントに適用される Ryser の式を使用して取得された n <= 22 の事前計算された正確な分布を使用します。
これは一般的な実装ではなく、特殊なケースです。 "permanent Ryser" をグーグルで検索しても、MATLAB コードであるhereにたどり着くまで実装は思いつきません。「永続的なRyser実装」をグーグルで検索すると、このCodeProjectページが表示されます。これは、かなり寛容なCode Project Open Licenseの下でライセンスされたかなり単純なCコードを提供します。