Gets the standard deviation : Math « Development Class « C# / C Sharp






Gets the standard deviation

     

/*
Copyright (c) 2010 <a href="http://www.gutgames.com">James Craig</a>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.*/


namespace Utilities.Math
{
    /// <summary>
    /// Various math related functions
    /// </summary>
    public static class MathHelper
    {
        #region Public Static Functions
        /// <summary>
        /// Gets the mean value from a list
        /// </summary>
        /// <param name="Values">The list of values</param>
        /// <returns>The mean/average of the list</returns>
        public static double Mean(System.Collections.Generic.List<int> Values)
        {
            if (Values.Count == 0)
                return 0.0;
            double ReturnValue = 0.0;
            for (int x = 0; x < Values.Count; ++x)
            {
                ReturnValue += Values[x];
            }
            return ReturnValue / (double)Values.Count;
        }

        /// <summary>
        /// Gets the mean value from a list
        /// </summary>
        /// <param name="Values">The list of values</param>
        /// <returns>The mean/average of the list</returns>
        public static double Mean(System.Collections.Generic.List<double> Values)
        {
            if (Values.Count == 0)
                return 0.0;
            double ReturnValue = 0.0;
            for (int x = 0; x < Values.Count; ++x)
            {
                ReturnValue += Values[x];
            }
            return ReturnValue / (double)Values.Count;
        }


        /// <summary>
        /// Calculates the variance of a list of values
        /// </summary>
        /// <param name="Values">List of values</param>
        /// <returns>The variance</returns>
        public static double Variance(System.Collections.Generic.List<double> Values)
        {
            if (Values == null || Values.Count == 0)
                return 0;
            double MeanValue = Mean(Values);
            double Sum = 0;
            for (int x = 0; x < Values.Count; ++x)
            {
                Sum += System.Math.Pow(Values[x] - MeanValue, 2);
            }
            return Sum / (double)Values.Count;
        }

        /// <summary>
        /// Gets the standard deviation
        /// </summary>
        /// <param name="Values">List of values</param>
        /// <returns>The standard deviation</returns>
        public static double StandardDeviation(System.Collections.Generic.List<double> Values)
        {
            return System.Math.Sqrt(Variance(Values));
        }

        #endregion
    }
}

   
    
    
    
    
  








Related examples in the same category

1.Demonstrate Math.Sin(), Math.Cos(), and Math.Tan(). Demonstrate Math.Sin(), Math.Cos(), and Math.Tan().
2.Find the radius of a circle given its area. Find the radius of a circle given its area.
3.Math operators
4.Use Math.Round
5.Math.Sign
6.Math.Abs
7.Math.Min
8.Converts a degrees angle into a radians angle.
9.Converts a radians angle into a degrees angle.
10.Converts degrees to radians.
11.Gets the mean value from a list
12.Gets the median from the list
13.Statistical functions: Mean
14.Statistical functions: Standard Deviation
15.The Method converts the temperature in Fahrenheit to Celcius
16.The Method converts the temperature in Celcius to Fahrenheit
17.Returns the maximum value of three numbers
18.Returns the minimum value of three numbers
19.rounds val to the nearest fractional value
20.Combines two input numbers in some proportion.
21.Normalise Angle
22.wraps the mod result to avoid negative results.
23.Method that calculates the Greatest Common Divisor (GCD) of two positive integer numbers.
24.Calculates the floor of the log, base 2, of 'x'.
25.Calculates the Least Common Multiple (LCM) of two strictly positive integer numbers.
26.Get Prime, Is prime
27.Same as System.Math.Acos but if angle is out of range, the result is clamped.
28.Math.Abs returns the absolute value of a Decimal number.
29.Math.Acos
30.Math.Asin returns the angle whose sine is the specified number.
31.Math.Atan Returns the angle whose tangent is the specified number.
32.Math.Atan2 Returns the angle whose tangent is the quotient of two specified numbers.
33.Math.BigMul Produces the full product of two 32-bit numbers.
34.Math.Ceiling Returns the smallest integral value that is greater than or equal to the specified decimal number.
35.Math.Cos Returns the cosine of the specified angle.
36.Math.Cosh returns the hyperbolic cosine
37.Math.DivRem calculates the quotient of integers and returns the remainder in an output parameter.
38.Math.E Field Represents the natural logarithmic base, specified by the constant, e.
39.Math.Exp returns e raised to the specified power.
40.Math.Floor returns the largest integer less than or equal to the specified decimal number.
41.Math.IEEERemainder returns the remainder resulting from the division
42.Math.Log Method returns the natural (base e) logarithm of a specified number.
43.Math.Log Method returns the logarithm of a specified number in a specified base.
44.Math.Log10 Method returns the base 10 logarithm of a specified number.
45.Math.Max Method returns the larger of two 8-bit unsigned integers.
46.Math.Min Method returns the smaller of two 8-bit unsigned integers.
47.Math.PI Field represents the ratio of the circumference of a circle to its diameter,
48.Math.Pow Method returns a specified number raised to the specified power.
49.Math.Round Method rounds a decimal value to the nearest integral value.
50.Math.Sign Method returns a value indicating the sign of a decimal number.
51.Math.Sinh Method returns the hyperbolic sine of the specified angle.
52.Math.Sqrt Method returns the square root of a specified number.
53.Math.Tan Method returns the tangent of the specified angle.
54.Math.Tanh Method returns the hyperbolic tangent of the specified angle.
55.Math.Truncate calculates the integral part of a specified decimal number.
56.double extension method for Radian/Degree conversion
57.Prime Number Utility
58.Fibonacci number
59.Almost equal and Epsilon
60.Is Value in the range
61.Angle Utility
62.Factorial value
63.Mean value
64.Get BMI
65.Conver Kg To Lb
66.Rational Class
67.Generic Max Min
68.Knuth shuffle
69.Calculate Distance between two points
70.Mesh Utilities
71.Generic Pair
72.Permutation demo
73.Calculate Variance
74.The normdist