标准偏差(标准差)

标准偏差(标准差)
标准偏差(Std Dev,Standard Deviation) -统计学名词。一种量度数据分布的分散程度之标准,用以衡量数据值偏离算术平均值的程度。标准偏差越小,这些值偏离平均值就越少,反之亦然。标准偏差的大小可通过标准偏差与平均值的倍率关系来衡量。

标准差也被称为标准偏差, 或者实验标准差, 标准差(Standard Deviation)描述各数据偏离平均数的距离(离均差)的平均数,它是离差平方和平均后的方根, 用σ表示. 标准差是方差的算术平方根. 标准差能反映一个数据集的离散程度, 标准偏差越小, 这些值偏离平均值就越少, 反之亦然. 标准偏差的大小可通过标准偏差与平均值的倍率关系来衡量. 平均数相同的两个数据集,标准差未必相同.

例如: A, B两组各有6位学生参加同一次语文测验, A组的分数为95, 85, 75、65, 55、45; B组的分数为73, 72, 71, 69、68, 67; 这两组的平均数都是70, 但A组的标准差应该是18.708分, B组的标准差应该是2.37分,说明A组学生之间的差距要比B组学生之间的差距大得多

总体标准偏差与样本标准偏差区别
总体标准偏差: 针对总体数据的偏差, 所以要平均: 1 / n

样本标准偏差: 针对从总体抽样, 利用样本来计算总体偏差, 为了使算出的值与总体水平更接近, 就必须将算出的标准偏差的值适度放大, 即: 1 / (N - 1)

标准偏差(标准差)_第1张图片


// 实现伪代码

// 总体标准偏差:
bool TotalityStandardDeviation(vector sample, double& dStdDev)
{
	if(1 > sample.size())
	{
		return false;
	}
	double dSum = 0.0;		// 样本值之和
	double dAverage = 0.0;	// 样本值的平均值
	
	// 遍历样本
	for(i = 0; i < sample.size(); ++i)
	{
		dSum += sample[i];
	}
	dAverage = dSum / sample.size();
	
	// 遍历样本数字
	dSum = 0.0;
	for(i = 0; i < sample.size(); ++i)
	{
		dSum += (sample[i] - dAverage)^2;
	}
	
	dStdDev =  sqrt(dSum / sample.size());
	return true;	
}


// 样本标准偏差:
bool SampleStandardDeviation(vector sample, double& dStdDev)
{
	if(2 > sample.size())
	{
		return false;
	}
	double dSum = 0.0;		// 样本值之和
	double dAverage = 0.0;	// 样本值的平均值
	
	// 遍历样本
	for(i = 0; i < sample.size(); ++i)
	{
		dSum += sample[i];
	}
	dAverage = dSum / sample.size();
	
	// 遍历样本数字
	dSum = 0.0;
	for(i = 0; i < sample.size(); ++i)
	{
		dSum += (sample[i] - dAverage)^2;
	}
	
	dStdDev =  sqrt(dSum / (sample.size() - 1));
	return true;	
}

引用: http://baike.baidu.com/view/663819.htm


你可能感兴趣的:(数学(!!))