C# 計算標準差 STD
时间: 2024-08-22 10:00:32 浏览: 37
在C#中,标准差(Standard Deviation, STD)是一个统计量,用于衡量一组数值的离散程度或分散程度。标准差越大,表示数据点分布越广泛;反之,如果标准差较小,则说明数据点更接近平均值。要计算一组数的标准差,你可以使用`System.Linq`库中的`Average()`和`Select()`方法,以及数学上的公式:
```csharp
using System;
using System.Linq;
double[] numbers = { 2, 4, 6, 8, 10 }; // 假设这是你要计算的一组数字
public static double CalculatePopulationStandardDeviation(double[] values)
{
if (values.Length < 2)
{
throw new ArgumentException("At least two values are required to calculate standard deviation.");
}
double mean = values.Average();
double sumOfSquares = values.Select(val => Math.Pow(val - mean, 2)).Sum();
return Math.Sqrt(sumOfSquares / values.Length);
}
// 使用示例
double stdDev = CalculatePopulationStandardDeviation(numbers);
Console.WriteLine($"The standard deviation of the given numbers is: {stdDev}");
```
这里我们首先计算平均值(mean),然后对每个数值减去平均值的结果取平方并求和,再除以数值个数后开方,得到的就是样本标准差。如果你的数据集代表整个总体而非一个样本,那么你应该使用总体标准差的公式,稍有不同。