포스팅 목차
* 파이썬 & R 패키지 호출 및 예제 데이터 생성 링크
[ ROUND(number) Oracle Function ]
ROUND 함수는 지정한 수치형 데이터 n값을 반올림 기준값 integer를 기준으로 반올림하여 반환한다. 만약 integer를 생략하면, n은 소수점을 반올림한다. 소수점 왼쪽의 정수부를 반올림하기 위해 음수값을 지정하여 처리한다.
- 소수점에 대한 반올림은 integer + 1 위치에서 반올림 여부를 평가하여 interger 위치로 반올림한다.
- 함수 설명 : ROUND(number) 오라클 함수 링크
1. Oracle(오라클)
round() 함수
Oracle Programming |
SELECT ROUND(345.678), ROUND(345.678, 2), ROUND(345.678, -1)
FROM DUAL
Results |
ROUND(345.678) ROUND(345.678,2) ROUND(345.678,-1)
346 345.68 350
2. Python Pandas(파이썬)
round() 함수
Python Programming |
round(345.678)
Results |
346
Python Programming |
round(345.678, 2)
Results |
345.68
3. R Programming (R Package)
round() 함수
R Programming |
%%R
round(345.678)
Results |
[1] 346
R Programming |
%%R
format(345.678, digits=1)
Results |
[1] "346"
R Programming |
%%R
round(345.678, 2)
Results |
[1] 345.68
4. R Dplyr Package
round() 함수
급여(sal)에 대하여 십의 자리에서 반올림하여 백의 자리에 처리한다.
R Programming |
%%R
emp %>%
dplyr::mutate(num_round = round(sal,-2)) %>%
head()
Results |
# A tibble: 6 x 9
empno ename job mgr hiredate sal comm deptno num_round
<dbl> <chr> <chr> <dbl> <date> <dbl> <dbl> <dbl> <dbl>
1 7369 SMITH CLERK 7902 1980-12-17 800 NA 20 800
2 7499 ALLEN SALESMAN 7698 1981-02-20 1600 300 30 1600
3 7521 WARD SALESMAN 7698 1981-02-22 1250 500 30 1200
4 7566 JONES MANAGER 7839 1981-04-02 2975 NA 20 3000
5 7654 MARTIN SALESMAN 7698 1981-09-28 1250 1400 30 1200
6 7698 BLAKE MANAGER 7839 1981-03-01 2850 NA 30 2800
5. R sqldf Package
round() 함수
R Programming |
%%R
sqldf(" SELECT ROUND(345.678) round_1, ROUND(345.678, 2) round_2, ROUND(345.678, -1) round_3 ")
Results |
round_1 round_2 round_3
1 346 345.68 350
6. Python pandasql Package
round() 함수
Python Programming |
ps.sqldf(" SELECT ROUND(345.678) round_1, ROUND(345.678, 2) round_2, ROUND(345.678, -1) round_3")
Results |
round_1 round_2 round_3
0 346.0 345.68 346.0
7. R data.table Package
round() 함수
급여(sal)에 대하여 십의 자리에서 반올림하여 백의 자리에 처리한다.
R Programming |
%%R
DT <- data.table(emp)
dept_DT <- data.table(dept)
DT[,num_round := round(sal,-2)][1:10, ]
Results |
empno ename job mgr hiredate sal comm deptno num_round
1: 7369 SMITH CLERK 7902 1980-12-17 800 NA 20 800
2: 7499 ALLEN SALESMAN 7698 1981-02-20 1600 300 30 1600
3: 7521 WARD SALESMAN 7698 1981-02-22 1250 500 30 1200
4: 7566 JONES MANAGER 7839 1981-04-02 2975 NA 20 3000
5: 7654 MARTIN SALESMAN 7698 1981-09-28 1250 1400 30 1200
6: 7698 BLAKE MANAGER 7839 1981-03-01 2850 NA 30 2800
7: 7782 CLARK MANAGER 7839 1981-01-09 2450 NA 10 2400
8: 7788 SCOTT ANALYST 7566 1982-12-09 3000 NA 20 3000
9: 7839 KING PRESIDENT NA 1981-11-17 5000 NA 10 5000
10: 7844 TURNER SALESMAN 7698 1981-09-08 1500 0 30 1500
8. Python Duckdb의 SQL
round() 함수
Python Programming |
%%sql
SELECT ROUND(345.678) as round_1, ROUND(345.678, 2) as round_2, ROUND(345.678, 0) as round_3
Python Programming |
duckdb.sql(" SELECT ROUND(345.678) as round_1, ROUND(345.678, 2) as round_2, ROUND(345.678, 0) as round_3 ").df()
Results |
round_1 round_2 round_3
0 346.0 345.68 346.0
--------------------------------------------
[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 예제로 만나는 테이블 데이터 처리 방법 리스트 링크 링크 |
반응형
댓글