我很难理解这些统计功能的作用以及它们的工作方式。我要了解stdev与stdevp和var equivelant的工作方式更加困难。有人可以帮我分解这些内容吗?

最佳答案

在统计中,标准差和方差是衡量总体指标偏离均值(通常是平均值)的量度。
标准偏差定义为方差的平方根,方差定义为与均值的平方差的平均值,即:

对于大小为n的总体:x1,x2,...,xn
均值:xmean

Stdevp = sqrt((((x1-xmean)^ 2 +(x2-xmean)^ 2 + ... +(xn-xmean)^ 2)/n)

当无法获得整个总体的值时(大部分时间),习惯上应用Bessel校正可以更好地估算整个总体的实际标准偏差。在计算方差时,贝塞尔的校正仅是除以n-1,而不是除以n,即:

stdev = sqrt((((x1-xmean)^ 2 +(x2-xmean)^ 2 + ... +(xn-xmean)^ 2)/(n-1))

请注意,对于足够大的数据集,使用哪个函数并不重要。

您可以通过运行以下T-SQL脚本来验证我的答案:

-- temporary data set with values 2, 3, 4
declare @t table([val] int);

insert into @t values
    (2),(3),(4);

select avg(val) as [avg], -- equals to 3.0
   -- Estimation of the population standard devisation using a sample and Bessel's Correction:
   -- ((x1 - xmean)^2 + (x2 - xmean)^2 + ... + (xn-xmean)^2)/(n-1)
   stdev(val) as [stdev],
   sqrt( (square(2-3.0) + square(3-3) + square(4-3))/2) as [stdev calculated], -- calculated with value 2, 3, 4

   -- Population standard deviation:
   -- ((x1 - xmean)^2 + (x2 - xmean)^2 + ... + (xn-xmean)^2)/n
   stdevp(val) as [stdevp],
   sqrt( (square(2-3.0) + square(3-3) + square(4-3))/3) as [stdevp calculated] -- calculated with value 2, 3, 4
from @t;

进一步阅读Wikipedia文章:standard deviatio n和Bessel's Correction

关于tsql - 了解T-SQL stdev,stdevp,var和varp,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1455370/

10-11 20:21