본문 바로가기
통계프로그램 비교 시리즈/오라클함수 비교(R & Python)

SQRT 오라클 함수 [Oracle, Pandas, R Prog, Dplyr, Sqldf, Pandasql, Data.Table, DuckDB]

by 기서무나구물 2021. 12. 19.

포스팅 목차

    * 파이썬 & R 패키지 호출 및 예제 데이터 생성 링크


    [ SQRT Oracle Function ]

     


    SQRT함수는 지정한 인수 n의 제곱근 값을 반환한다.

     

     


    1. Oracle(오라클)

     

    sqrt() 함수

    다음 예제는 SQRT 함수를 사용하여서 16의 제곱근 값을 계산한다.

     

    Oracle Programming
    SELECT SQRT(16) "Square root" 
    FROM   DUAL;

     

    Results
    Square root
    -------------------
    4

     


    2. Python Pandas(파이썬)

     

    math.sqrt 함수

    Python Programming
    import math
    
    math.sqrt(16)

     

    Results
    4.0

     


    math.sqrt 함수

    급여의 제곱근 값을 반환한다.

     

    Python Programming
    import math
    
    emp['sal'].apply(lambda x: math.sqrt(x) ).head(7)

     

    Results
    0    28.284271
    1    40.000000
    2    35.355339
    3    54.543561
    4    35.355339
    5    53.385391
    6    49.497475
    Name: sal, dtype: float64

     

     


    3. R Programming (R Package)

     

    sqrt() 함수

    R Programming
    %%R
    
    sqrt(16)

     

    Results
    [1] 4

     


    sqrt() 함수

    급여의 제곱근 값을 반환한다.

     

    R Programming
    %%R
    
    sqrt(emp$sal)

     

    Results
     [1] 28.28427 40.00000 35.35534 54.54356 35.35534 53.38539 49.49747 54.77226
     [9] 70.71068 38.72983 33.16625 30.82207 54.77226 36.05551

     

     

     


    4. R Dplyr Package

     

    sqrt() 함수

    급여의 제곱근 값을 반환한다.

     

    R Programming
    %%R
    
    emp %>%
      dplyr::mutate(Square_root = sqrt(sal)) %>%
      head()

     

    Results
    # A tibble: 6 x 9
      empno ename  job        mgr hiredate     sal  comm deptno Square_root
      <dbl> <chr>  <chr>    <dbl> <date>     <dbl> <dbl>  <dbl>       <dbl>
    1  7369 SMITH  CLERK     7902 1980-12-17   800    NA     20        28.3
    2  7499 ALLEN  SALESMAN  7698 1981-02-20  1600   300     30        40  
    3  7521 WARD   SALESMAN  7698 1981-02-22  1250   500     30        35.4
    4  7566 JONES  MANAGER   7839 1981-04-02  2975    NA     20        54.5
    5  7654 MARTIN SALESMAN  7698 1981-09-28  1250  1400     30        35.4
    6  7698 BLAKE  MANAGER   7839 1981-03-01  2850    NA     30        53.4

     

     

     


    5. R sqldf Package

     

    sqrt() 함수

    R Programming
    %%R
    
    sqldf(" SELECT SQRT(16) Square_root  ")

     

    Results
      Square_root
    1           4

     


    sqrt() 함수

    R Programming
    %%R
    
    sqldf(" SELECT sqrt(sal) Square_root from emp  ")

     

    Results
       Square_root
    1     28.28427
    2     40.00000
    3     35.35534
    4     54.54356
    5     35.35534
    6     53.38539
    7     49.49747
    8     54.77226
    9     70.71068
    10    38.72983
    11    33.16625
    12    30.82207
    13    54.77226
    14    36.05551

     

     

     


    6. Python pandasql Package

     

    sqrt() 함수

    Python Programming
    ps.sqldf(" SELECT SQRT(16) Square_root  ")

     

     

     


    7. R data.table Package

     

    sqrt() 함수

    R Programming
    %%R
    
    DT          <- data.table(emp)
    dept_DT     <- data.table(dept)
    
    DT[,square_root := sqrt(sal)][1:10, ]

     

    Results
        empno  ename       job  mgr   hiredate  sal comm deptno square_root
     1:  7369  SMITH     CLERK 7902 1980-12-17  800   NA     20    28.28427
     2:  7499  ALLEN  SALESMAN 7698 1981-02-20 1600  300     30    40.00000
     3:  7521   WARD  SALESMAN 7698 1981-02-22 1250  500     30    35.35534
     4:  7566  JONES   MANAGER 7839 1981-04-02 2975   NA     20    54.54356
     5:  7654 MARTIN  SALESMAN 7698 1981-09-28 1250 1400     30    35.35534
     6:  7698  BLAKE   MANAGER 7839 1981-03-01 2850   NA     30    53.38539
     7:  7782  CLARK   MANAGER 7839 1981-01-09 2450   NA     10    49.49747
     8:  7788  SCOTT   ANALYST 7566 1982-12-09 3000   NA     20    54.77226
     9:  7839   KING PRESIDENT   NA 1981-11-17 5000   NA     10    70.71068
    10:  7844 TURNER  SALESMAN 7698 1981-09-08 1500    0     30    38.729

     


    8. Python Duckdb의 SQL

     

    sqrt() 함수

     

    Python Programming
    %%sql
      SELECT SQRT(16) Square_root

     

     

    Python Programming
    duckdb.sql(" SELECT SQRT(16) Square_root ").df()

     

    Results
       Square_root
    0          4.0

     


    Taken at Allerton Gardens at the National Tropical Botanical Garden in Kauai. ( https://unsplash.com/photos/bQuVWeyuYB4 )

      --------------------------------------------  

     

    [Oracle, Pandas, R Prog, Dplyr, Sqldf, Pandasql, Data.Table] 오라클 함수와 R & Python 비교 사전 목록 링크

     

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

     

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

    댓글