Oracle分析函式五 統計分析函式

2021-09-05 08:16:17 字數 3729 閱讀 2146

oracle

分析函式——統計分析函式

方差和標準差:

樣本中各資料與樣本平均數的差的平方和的平均數叫做樣本方差;樣本方差的算術平方根叫做樣本標準差。樣本方差和樣本標準差都是衡量乙個樣本波動大小的量,樣本方差或樣本標準差越大,樣本資料的波動就越大。

數學上一般用 e 來度量隨機變數 x 與其均值 e(x) 即期望的偏離程度,稱為 x 的方差。

方差是標準差的平方

方差和標準差。方差和標準差是測算離散趨勢最重要、最常用的指標。方差是各變數值與其均值離差平方的平均數,它是測算數值型資料離散程度的最重要的方法。標準差為方差的平方根,用 s 表示。

stddev 返回 expr 的樣本標準偏差。它可用作聚集和分析函式。它與 stddev_samp 的不同之處在於,當計算的輸入資料只有一行時, stddev 返回 0 ,而 stddev_samp 返回 null 。

oracle 資料庫 中,標準偏差計算結果與 variance 用作集聚函式計算結果的平方根相等。該函式引數可取任何數字型別或是任何能隱式轉換成數字型別的非數字型別。

stddev

功能描述:計算當前行關於組的標準偏離。( standard deviation )

sample :

stddev_samp

功能描述: 該函式計算累積樣本標準偏離,並返回總體變數的平方根,其返回值與 var_pop 函式的平方根相同。( standard deviation - sample )

sample :

它與 stddev_samp 的不同之處在於,當計算的輸入資料只有一行時, stddev 返回 0 ,而 stddev_samp 返回 null 。

select

department_id,

first_name||' '||last_name employee_name,

hire_date,

salary,

stddev_samp(salary) over (partition by department_id order by hire_date) as cum_sdev

from employees

where department_id in (20,30,60);

stddev 和 stddev_samp 的區別

select

first_name||' '||last_name employee_name,

hire_date,

salary,

stddev(salary) over (order by hire_date) "stddev",

stddev_samp(salary) over (order by hire_date) as cum_sdev

from employees

var_pop

功能描述:( variance population )該函式返回非空集合的總體變數(忽略 null ), var_pop 進行如下計算:

(sum(expr2) - sum(expr)2 / count(expr)) / count(expr)

var_samp

功能描述:( variance sample )該函式返回非空集合的樣本變數(忽略 null ), var_pop 進行如下計算:

(sum(expr*expr)-sum(expr)*sum(expr)/count(expr))/(count(expr)-1)

sample :

variance

功能描述:該函式返回表示式的變數, oracle 計算該變數如下:

如果表示式中行數為 1 ,則返回 0

如果表示式中行數大於 1 ,則返回 var_samp

sample :

select

department_id,

first_name||' '||last_name employee_name,

hire_date,

salary,

stddev(salary) over (partition by department_id order by hire_date) as "stddev",

stddev_samp(salary) over (partition by department_id order by hire_date) as "stddev_samp",

var_pop(salary) over (partition by department_id order by hire_date) as "var_pop",

var_samp(salary) over (partition by department_id order by hire_date) as "var_samp",

variance(salary) over (partition by department_id order by hire_date) as "variance" 

from employees  

sample :

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(+)

corr

功能描述:返回一對表示式的相關係數,它是如下的縮寫:

covar_pop(expr1,expr2)/stddev_pop(expr1)*stddev_pop(expr2))

從統計上講,相關性是變數之間關聯的強度,變數之間的關聯意味著在某種程度

上乙個變數的值可由其它的值進行**。通過返回乙個 -1~1 之間的乙個數 , 相關

係數給出了關聯的強度, 0 表示不相關。

select

a.department_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,

corr(a.salary,b.salary) over (order by a.department_id,a.hire_date ) as corr

from employees a,employees b

where a.manager_id=b.employee_id(+)

Oracle分析函式五 統計分析函式

oracle 分析函式 統計分析函式 方差和標準差 樣本中各資料與樣本平均數的差的平方和的平均數叫做樣本方差 樣本方差的算術平方根叫做樣本標準差。樣本方差和樣本標準差都是衡量乙個樣本波動大小的量,樣本方差或樣本標準差越大,樣本資料的波動就越大。數學上一般用 e來度量隨機變數 x與其均值 e x 即期...

多元統計分析 聯合分析

通過假定的產品具有某些特徵,對產品進行模擬,然後讓消費者根據自己的喜好來對虛擬產品進行評價,在利用統計方法將這些特徵的重要性與效用分離,從而得出對每一特徵以及特徵水平的重要程度做出量化評價。主要解決的問題 顯示屬性及其不同水平的相對重要性 顯示屬性不同水平間的最優組合 進行市場細分 模擬占有率 特徵...

資料特徵分析 統計分析

統計分析是對定量資料進行統計描述,常從集中趨勢和離中趨勢兩個方面分析。集中趨勢 指一組資料向某一中心靠攏的傾向,核心在於尋找資料的代表值或中心值 統計平均數 算數平均數和位置平均數 算術平均數 簡單算術平均數和權重算術平均數 位置平均數 中位數和眾數 離中趨勢 極差和分位差 標準差和方差 隨機生成整...