淘宝客网站免费建设,免费代理服务器ip和端口,有经验的永州网站建设,建立个人网站的详细步骤转载自 MySQL标准偏差
标准差介绍
标准差是衡量数据集中值的分布情况#xff0c;标准偏差显示平均值(平均值)存在多少变化。
低标准偏差表明数据集中的值接近于平均值。 而高标准偏差表示数据集的值在大范围的值上分散。
标准偏差是方差的平方根#xff0c;可以通过以下…转载自 MySQL标准偏差
标准差介绍
标准差是衡量数据集中值的分布情况标准偏差显示平均值(平均值)存在多少变化。
低标准偏差表明数据集中的值接近于平均值。 而高标准偏差表示数据集的值在大范围的值上分散。
标准偏差是方差的平方根可以通过以下步骤计算 步骤1 - 计算数据集中所有值的平均值以获得平均值或平均值例如假设数据集由1,2和3组成平均值为(1 2 3)/ 3 2。 步骤2 - 计算值与每个值的平均值的差并且对每个值的每个的结果进行平方也就是 步骤3 - 计算步骤2中产生方差的平均值。然后取方差的平方根以获得数据集中所有值的标准偏差例如((1 0 1)/ 3)的平方根 0.816497 。
总体标准差与样本标准偏差
如果数据集中的所有值都被纳入计算则该标准偏差称为总体标准偏差。 然而如果将一个子集的值或一个样本作为计算则该标准偏差称为样本标准偏差。
西格玛字母(σ)表示标准偏差。以下等式说明如何计算总体标准偏差和样本标准差
总体标准偏差 样品标准偏差 总体标准差和样本标准差的计算略有不同。当计算样本标准偏差的方差时除以N-1而不是N其中N是数据集中的值的数量。
MySQL标准偏差函数
MySQL可以方便您计算总体标准偏差和样本标准偏差。
要计算总体标准偏差请使用以下功能之一
STD(expression) - 返回表达式的总体标准偏差。如果没有匹配的行则STD函数返回NULL。STDDEV(expression) – 相当于STD函数仅提供与Oracle数据库兼容。STDEV_POP(expression) - 相当于STD函数。
要计算样本标准差请使用STDDEV_SAMP(expression)函数。
MySQL还为总体偏差和样本方差计算提供了一些函数
VAR_POP(expression) – 计算表达式的总体标准差。VARIANCE(expression) – 相当于VAR_POP函数。VAR_SAMP(expression) – 计算表达式的样本标准差。
MySQL标准偏差函数的例子
我们来看看示例数据库(yiibaidb)中的orders表其表结构如下所示 -
mysql desc orders;
--------------------------------------------------------
| Field | Type | Null | Key | Default | Extra |
--------------------------------------------------------
| orderNumber | int(11) | NO | PRI | NULL | |
| orderDate | date | NO | | NULL | |
| requiredDate | date | NO | | NULL | |
| shippedDate | date | YES | | NULL | |
| status | varchar(15) | NO | | NULL | |
| comments | text | YES | | NULL | |
| customerNumber | int(11) | NO | MUL | NULL | |
--------------------------------------------------------
7 rows in set总体标准偏差函数的例子
首先以下查询从orders表中返回客户编号及其订单数
SELECT customerNumber, COUNT(*) orderCount
FROM orders
WHERE status Shipped
GROUP BY customerNumber;执行上面查询语句得到以下结果 -
----------------------------
| customerNumber | orderCount |
----------------------------
| 103 | 3 |
| 112 | 3 |
| 114 | 5 |
| 119 | 3 |
| 121 | 4 |
| 124 | 16 |
***** 此处省略了一大波数据 *****
| 489 | 2 |
| 495 | 2 |
| 496 | 3 |
----------------------------
98 rows in set第二步以下陈述计算客户订单数量的总体标准差
SELECT FORMAT(STD(orderCount),2)
FROM (SELECT customerNumber, count(*) orderCount
FROM orders
GROUP BY customerNumber) t;执行上面查询语句得到以下结果 -
---------------------------
| FORMAT(STD(orderCount),2) |
---------------------------
| 2.84 |
---------------------------
1 row in set请注意FORMAT函数用于格式化STD函数的结果。
样本标准偏差函数的示例
假设您只想在orders表中仅仅想要计算那些已发货的订单。
首先以下查询返回客户编号及其发货订单编号
SELECT customerNumber, count(*) orderCount
FROM orders
WHERE status Shipped
GROUP BY customerNumber;第二以下查询使用STDDEV_SAMP函数计算样本标准偏差
SELECT FORMAT(STDDEV_SAMP(orderCount),2)
FROM (SELECT customerNumber, count(*) orderCount
FROM orders
WHERE status Shipped
GROUP BY customerNumber) t;执行上面查询语句得到以下结果 -
-----------------------------------
| FORMAT(STDDEV_SAMP(orderCount),2) |
-----------------------------------
| 2.48 |
-----------------------------------
1 row in set在本教程中我们向您介绍了标准偏差。 然后向您展示了如何使用MySQL标准偏差函数来计算表达式的总体标准偏差和样本标准偏差。