Oracle数据库中的方差、标准差与协方差

本文详细介绍了标准差、方差、样本标准差、样本方差、总体协方差和样本协方差等统计函数的功能及应用场景,并提供了具体的SQL示例。

一、方差与标准差

/*
STDDEV()函数功能描述:
计算当前行关于组的标准偏离。(Standard Deviation)
STDDEV_SAMP()函数功能描述:
该函数计算累积样本标准偏离,并返回总体变量的平方根,其返回值与VAR_POP函数的平方根相同。
区别:当计算的输入数据只有一行时,stddev()返回0,而stddev_samp()返回null。
*/
--例子:
SELECT deptno,
       STDDEV (sal)  AS "STDDEV",               --标准差
       STDDEV_SAMP (sal) AS "STDDEV_SAMP",      --样本标准差
       VAR_POP (sal) AS "VAR_POP",              --方差
       VAR_SAMP (sal)  AS "VAR_SAMP"            --样本方差
FROM scott.emp
GROUP BY deptno;

二、协方差

       E[(X-E(X))(Y-E(Y))]称为随机变量X和Y的协方差,记作COV(X,Y),即:COV(X,Y)=E[(X-E(X))(Y-E(Y))]。若两个随机变量X和Y相互独立,则COV(X,Y)=0,因而若上述数学期望不为零,则X和Y必定不是相互独立的,亦即他们之间存在着一定的联系。

/*
COVAR_POP功能描述:
返回一对表达式的总体协方差。
COVAR_SAMP功能描述:
返回一对表达式的样本协方差
*/
--例子:
SELECT
     a.department_id,
     a.employee_id,
     b.employee_id manager_id,
     a.first_name||' '||a.last_name employee_name,
     b.first_name||' '||b.last_name manager_name,  
     a.hire_date,
     a.salary employee_salary,
     b.salary manager_salary,
     COVAR_POP(a.salary,b.salary) OVER (ORDER BY a.department_id,a.hire_date ) 
     AS CUM_COVP,  --总体协方差
     COVAR_SAMP(a.salary,b.salary) OVER (ORDER BY a.department_id,a.hire_date )
     AS CUM_SAMP   --样本协方差
FROM employees a,employees b
WHERE a.manager_id=b.employee_id(+);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

象在舞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值