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

2022-03-23 12:10:34 字數 4447 閱讀 7339

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

協方差分析是建立在方差分析和回歸分析基礎之上的一種統計分析方法。

方差分析是從質量因子的角度**因素不同水平對實驗指標影響的差異。一般說來,質量因子是可以人為控制的。

回歸分析是從數量因子的角度出發,通過建立回歸方程來研究實驗指標與乙個

(或幾個

)因子之間的數量關係。但大多數情況下,數量因子是不可以人為加以控制的。

兩個不同引數之間的方差就是協方差

若兩個隨機變數x和

y相互獨立,則

e[(x-e(x))(y-e(y))]=0

,因而若上述數學期望不為零,則x和

y必不是相互獨立的,亦即它們之間存在著一定的關係。

定義e[(x-e(x))(y-e(y))]

稱為隨機變數x和

y的協方差,記作

cov(x,y)

,即cov(x

,y)=e[(x-e(x))(y-e(y))]

。covar_pop

功能描述:返回一對表示式的總體協方差。

sample

:covar_samp

功能描述:返回一對表示式的樣本協方差

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 ...

多元統計分析 聯合分析

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

資料特徵分析 統計分析

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