この質問では、PowerPack を使用して同様の操作を行う方法を尋ねました。F# だけでなく、一般的な .Net 用に設計されているため、代わりに MathNet を使用することにしました。
2 つの行列を取り、一致率を出力する関数が必要です。行列の値はすべて 1.0 または -1.0 です。Matrix(int) 型の行列はサポートされていないようです。
これを実現する関数を思いつきましたが、できれば Matrix クラスの機能を使用して、これを行うためのより直接的なルートがあると思います。
これは私が持っているものです:
let percentageTheSame (a:Matrix<float>) (b:Matrix<float>) =
let seqA = a |> Matrix.toSeq
let seqB = b |> Matrix.toSeq
let sames = Seq.map2 (fun a b -> (a,b)) seqA seqB |> Seq.filter (fun (a, b) -> a = b)
float(sames.Count())/float(seqA.Count())