#region Disclaimer/Info
///////////////////////////////////////////////////////////////////////////////////////////////////
// Subtext WebLog
//
// Subtext is an open source weblog system that is a fork of the .TEXT
// weblog system.
//
// For updated news and information please visit http://subtextproject.com/
// Subtext is hosted at Google Code at http://code.google.com/p/subtext/
// The development mailing list is at subtext@googlegroups.com
//
// This project is licensed under the BSD license. See the License.txt file for more information.
///////////////////////////////////////////////////////////////////////////////////////////////////
// This class adapted from Rama Krishna Vavilala's Tag Cloud control article on
// Code Project: http://www.codeproject.com/useritems/cloud.asp
#endregion
using System;
using System.Collections.Generic;
using System.Globalization;
namespace Subtext.Framework.Util
{
/// <summary>
/// Statistical functions
/// </summary>
publicstaticclass Statistics
{
publicstaticdouble StandardDeviation(this IEnumerable<double> values, out double mean)
{
mean = values.Mean();
double sumOfDiffSquares = 0;
int count = 0;
foreach(double d in values)
{
double diff = (d - mean);
sumOfDiffSquares += diff * diff;
count++;
}
return Math.Sqrt(sumOfDiffSquares / count);
}
}
}