Accord.Tests.Statistics.KernelPrincipalComponentAnalysisTest.TransformTest5 C# (CSharp) Method

TransformTest5() private method

private TransformTest5 ( ) : void
return void
        public void TransformTest5()
        {
            int element = 10;
            int dimension = 20;

            double[,] data = new double[element, dimension];

            int x = 0;

            for (int i = 0; i < element; i++)
            {
                for (int j = 0; j < dimension; j++)
                    data[i, j] = x;

                x += 10;
            }

            IKernel kernel = new Gaussian(10.0);
            var kpca = new KernelPrincipalComponentAnalysis(data, kernel, AnalysisMethod.Center);

            kpca.Compute();

            double[,] result = kpca.Transform(data, 2);

            double[,] expected = new double[,] 
            {
                { -0.23053882357602, -0.284413654763538 },
                { -0.387883199575312, -0.331485820285834 },
                { -0.422077400361521, -0.11134948984113 },
                { -0.322265008788599, 0.23632015508648 },   
                { -0.12013575394419, 0.490928809797139 },
                { 0.120135753938394, 0.490928809796094 },
                { 0.322265008787236, 0.236320155085067 },
                { 0.422077400363969, -0.111349489837512 },
                { 0.38788319957867, -0.331485820278937 },
                { 0.230538823577373, -0.28441365475783 } 
            };

            Assert.IsTrue(result.IsEqual(expected, 1e-10));
        }