본문 바로가기
오라클 게시판/오라클 함수

【오라클(Oracle) SQL 함수】 STATS_F_TEST 함수

by 기서무나구물 2021. 10. 20.

포스팅 목차

    STATS_F_TEST

     


    문법

     

    stats_f_test::=

     


    목적  

    STATS_F_TEST함수는 두 개의 분산이 유의한 차가 있는지 테스트(F 검정)한다.

    f의 관측된 값은 다른 분산에 대한 한쪽의 분산 비율이다. 그래서, 이 값은 1과 매우 다른 것은 일반적으로 유의한 차가 있는 것을 나타낸다.

    이 한수는 3개의 인수를 취한다. expr1은 그룹 변수 또는 독립변수, epxr2는 값의 표본이다. 이 함수는 3번째 인수의 값의 정의에 의하여, 하나의 값을 반환한다. 만약 3번째 인수를 생략하면, 기본적으로 TWO_SIDED_SIG를 설정한다. 반환된 값의 의미는 아래 표 참조.

     

    Table 7-5 STATS_F_TEST Return Values

    STATISTIC  f의 관측된 값.
    DF_NUM 분자의 자유도
    DF_DEN 분모의 자유도
    ONE_SIDED_SIG f의 한쪽 유의성
    TWO_SIDED_SIG f의 양쪽 유의성

    f의 관측된 값은 두 번째 그룹에 대한 한쪽 그룹 분산의 비율이다. f의 관측된 값의 유의성은 분산이 우연히 다를 확률이다.(0~1 사이의 수치) 유의성이 작은 값은 2개의 분산에 유의한 차가 있다는 것을 나타낸다. 각 분산의 자유도는 표본의 관측치 수에서 1을 뺀 수이다.

     


    관련 함수

    함수명 함수내용
    STATS_BINOMIAL_TEST 두 개의 유효한 값이 존재하는 이분형 변수(이분 변수, 두 개의 배타적인 값을 가지는 변수)에 대해서 동질성 검증을 위한 정확도 검증 작업(Exact probability test)을 수행한다.
    STATS_CROSSTAB 두 개의 명목 변수를 분석하는 방법이다. 
    STATS_F_TEST 두 개의 분산이 유의한 차가 있는지 테스트(F 검정)한다.
    STATS_KS_TEST 두 개의 표본이 같은 모집단에 속하고 있는지 또는 동일한 분포를 가지는 모집단에 속하고 있는지 테스트하는 Kolmogorov-Smirnov함수이다.
    STATS_MODE 값의 집합을 인수로 취하여, 가장 큰 빈도를 가지는 값(최빈값, mode)을 반환한다.
    STATS_MW_TEST A Mann Whitney test는 2개의 독립 표본(independent samples)을 비교한다.
    STATS_ONE_WAY_ANOVA 일원분산분석 함수(STATS_ONE_WAY_ANOVA)는 분산의 다른 2개 추정치 비교하여 통계적 유의성에 대한 평균(그룹 또는 변수에 대한)의 유의한 차이를 검증한다. 
    STATS_T_TEST_* t검정은 평균의 차이의 유의성을 측정한다.

    • STATS_T_TEST_ONE: 일 표본 t검정
    • STATS_T_TEST_PAIRED: 이 표본 대응 t검정(crossed t-test로 알려짐.)
    • STATS_T_TEST_INDEP: 같은 분산을 가지는 2개 독립 그룹의 t검정(합동 분산(Pooled variance))
    • STATS_T_TEST_INDEPU: 다른 분산을 가지는 2개 독립 그룹의 t검정(비 합동 분산)
    STATS_WSR_TEST 대응쌍 표본의 윌콕스 부호 순위 검증(Wilcoxon Signed Ranks test)을 수행하여 표본간의 차이가 유의한 차이가 있는지 여부를 검정한다.

     


    예제

    • STATS_F_TEST 예제

    다음 예제는 남자와 여자 사이의 신용 한도에 분산이 유의한 차가 있는지 판단한다. p_value가 0 근처가 아니고, f_statistic가 1에 가까운 결과는 남성과 여성의 신용 한도의 차이가 유의한 의미가 없다는 것을 나타낸다.

    Oracle Program
    SELECT VARIANCE(DECODE(cust_gender, 'M', cust_credit_limit, null)) var_men,
           VARIANCE(DECODE(cust_gender, 'F', cust_credit_limit, null)) var_women,
           STATS_F_TEST(cust_gender, cust_credit_limit, 'STATISTIC') f_statistic,
           STATS_F_TEST(cust_gender, cust_credit_limit) two_sided_p_value
    FROM   sh.customers;

     

    Results
       VAR_MEN  VAR_WOMEN F_STATISTIC TWO_SIDED_P_VALUE
    ---------- ---------- ----------- -----------------
    12879896.7   13046865  1.01296348        .311928071

     


    오라클 SQL 함수(Oracle SQL Function) 목록 리스트 링크

     

    [SQL, Pandas, R Prog, Dplyr, SQLDF, PANDASQL, DATA.TABLE] SQL EMP 예제로 만나는 테이블 데이터 처리 방법 리스트 링크

     

    반응형

    댓글