Accord.Statistics.Analysis.ConfusionMatrix.ToGeneralMatrix C# (CSharp) Method

ToGeneralMatrix() public method

Converts this matrix into a GeneralConfusionMatrix.
public ToGeneralMatrix ( ) : GeneralConfusionMatrix
return GeneralConfusionMatrix
        public GeneralConfusionMatrix ToGeneralMatrix()
        {
            // Create a new matrix assuming negative instances 
            // are class 0, and positive instances are class 1.

            int[,] matrix = 
            {
                //   class 0          class 1
                { trueNegatives,  falsePositives }, // class 0
                { falseNegatives, truePositives  }, // class 1
            };

            return new GeneralConfusionMatrix(matrix);
        }

Usage Example

        public void ToGeneralMatrixTest1()
        {
            // Example from http://www.iph.ufrgs.br/corpodocente/marques/cd/rd/presabs.htm

            ConfusionMatrix matrix = new ConfusionMatrix
            (
                truePositives: 70,
                trueNegatives: 95,
                falsePositives: 5,
                falseNegatives: 30
            );

            Assert.AreEqual(70, matrix.TruePositives);
            Assert.AreEqual(5, matrix.FalsePositives);
            Assert.AreEqual(95, matrix.TrueNegatives);
            Assert.AreEqual(30, matrix.FalseNegatives);

            GeneralConfusionMatrix general = matrix.ToGeneralMatrix();

            Assert.AreEqual(matrix.Kappa, general.Kappa, 1e-10);
            Assert.AreEqual(matrix.Accuracy, general.OverallAgreement, 1e-10);
            Assert.AreEqual(matrix.StandardError, general.StandardError, 1e-10);
            Assert.AreEqual(matrix.StandardErrorUnderNull, general.StandardErrorUnderNull, 1e-10);
            Assert.AreEqual(matrix.Variance, general.Variance, 1e-10);
            Assert.AreEqual(matrix.VarianceUnderNull, general.VarianceUnderNull, 1e-10);
            Assert.AreEqual(matrix.Samples, general.Samples);

            Assert.IsFalse(double.IsNaN(general.Kappa));
            Assert.IsFalse(double.IsNaN(general.OverallAgreement));
            Assert.IsFalse(double.IsNaN(general.StandardError));
            Assert.IsFalse(double.IsNaN(general.StandardErrorUnderNull));
            Assert.IsFalse(double.IsNaN(general.Variance));
            Assert.IsFalse(double.IsNaN(general.VarianceUnderNull));
        }
All Usage Examples Of Accord.Statistics.Analysis.ConfusionMatrix::ToGeneralMatrix