Ejemplo n.º 1
0
        public void CorrelationTest()
        {
            var v1 = new SparseVector(new double[] { 1.0 });
            var v2 = new SparseVector(new double[] { 1.0 });
            var v3 = new SparseVector(new double[] { 1.0, 0.0, 0.0 });
            var v4 = new SparseVector(new double[] { 0.0, 1.0, 0.0 });
            var v5 = new SparseVector(new double[] { -1.0, 0.0, 0.0 });
            //При вычислении возможны отклонения на 0.00000001. Будьте осторожны
            var cd1 = v1.Correlation(v2);
            var cd2 = v3.Correlation(v4);
            var cd3 = v3.Correlation(v5);

            Assert.IsTrue(Math.Abs(cd1 - 1) < epsilon);
            Assert.IsTrue(Math.Abs(cd2) < epsilon);
            Assert.IsTrue(Math.Abs(cd3 + 1) < epsilon);
        }