Пример #1
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Name,Description")] Disorder disorder)
        {
            if (id != disorder.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(disorder);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!DisorderExists(disorder.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(disorder));
        }
Пример #2
0
        public void NullMemberOrderingTest()
        {
            var a = new Disorder();
            var b = new Disorder();

            Assert.True(a.CompareTo(b) == 0);
            Assert.True(b.CompareTo(a) == 0);
        }
Пример #3
0
        public void NullMemberEqualityTest()
        {
            var a = new Disorder();
            var b = new Disorder();

            Assert.True(a == b);
            Assert.True(a.GetHashCode() == b.GetHashCode());
            Assert.False(a != b);
            Assert.False(a.GetHashCode() != b.GetHashCode());
        }
Пример #4
0
        public async Task <IActionResult> Create([Bind("Id,Name,Description")] Disorder disorder)
        {
            if (ModelState.IsValid)
            {
                _context.Add(disorder);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(disorder));
        }
Пример #5
0
        public void Can_calculate_pure_entropy()
        {
            var matrix = new Matrix(new Number[, ]
            {
                { 0, 1, 0 },                                        // NO
                { 0, 1, 0 },                                        // NO
            });

            var entropy = Disorder.ShannonEntropy(matrix);

            Assert.IsNotNull(entropy);
            Assert.AreEqual((Number)0, entropy);
        }
Пример #6
0
        public void Can_calculate_pure_classification_error()
        {
            var matrix = new Matrix(new Number[, ]
            {
                { 0, 1, 0 },                                        // NO
                { 0, 1, 0 },                                        // NO
            });

            var impurity = Disorder.ClassificationError(matrix);

            Assert.IsNotNull(impurity);
            Assert.AreEqual((Number)0, impurity);
        }
Пример #7
0
        public void Can_calculate_pure_gini_impurity()
        {
            var matrix = new Matrix(new Number[, ]
            {
                { 0, 1, 0 },                                        // NO
                { 0, 1, 0 },                                        // NO
            });

            var impurity = Disorder.GiniImpurity(matrix);

            Assert.IsNotNull(impurity);
            Assert.AreEqual((Number)0, impurity);
        }
Пример #8
0
        public void Can_calculate_entropy()
        {
            var matrix = new Matrix(new Number[, ]
            {
                { 1, 1, 0.5 },                                      // MAYBE
                { 1, 1, 1 },                                        // YES
                { 1, 0, 0 },                                        // NO
                { 0, 1, 0 },                                        // NO
                { 0, 1, 0 },                                        // NO
            });

            var entropy = Disorder.ShannonEntropy(matrix);

            Assert.IsNotNull(entropy);
            Assert.AreEqual((Number)1.3709505944546687, entropy);
        }
Пример #9
0
        /// <summary>
        /// Calculates the disorder of given matrix of values
        /// </summary>
        /// <param name="disorderType">The disorder calculation algorithm to use</param>
        /// <param name="matrix">The data set</param>
        /// <returns></returns>
        public static Number GetDisorder(DisorderType disorderType, Matrix matrix)
        {
            Number baseline;

            switch (disorderType)
            {
            case DisorderType.ShannonEntropy:
                baseline = Disorder.ShannonEntropy(matrix);
                break;

            case DisorderType.GiniImpurity:
                baseline = Disorder.GiniImpurity(matrix);
                break;

            case DisorderType.ClassificationError:
                baseline = Disorder.ClassificationError(matrix);
                break;

            default:
                throw new ArgumentOutOfRangeException("disorderType");
            }
            return(baseline);
        }