포스팅 목차
5. Display employee number and total salary for each employee.
* 개별 사원의 사원번호(empno)과 총급여(sal)를 출력하시오.
- [변수 생성] 신규 변수를 생성하여 출력
|
1. 오라클(Oracle)
- emp 테이블에서 사원번호와, 총급여(sal*comm)를 출력한다.
Oracle Programming |
select empno, sal*comm as salary
from emp;
2. 파이썬(Pandas)
- emp 테이블에 총급여 칼럼을 생성 후에 사원번호와 총급여를 출력
Python Programming |
emp["Tot_salary"] = emp["sal"] * emp["comm"]
emp[["empno","Tot_salary"]]
Results |
empno | Tot_salary | |
0 | 7369 | NaN |
1 | 7499 | 480000.0 |
2 | 7521 | 625000.0 |
3 | 7566 | NaN |
4 | 7654 | 1750000.0 |
5 | 7698 | NaN |
6 | 7782 | NaN |
7 | 7788 | NaN |
8 | 7839 | NaN |
9 | 7844 | 0.0 |
10 | 7876 | NaN |
11 | 7900 | NaN |
12 | 7902 | NaN |
13 | 7934 | NaN |
3. R Programming (R Package)
- emp 테이블에 총급여 칼럼을 추가 생성 후에 사원번호와 총급여를 출력
R Programming |
%%R
emp["Tot_salary"] = emp["sal"] * emp["comm"]
# emp[c("empno","Tot_salary")]
emp[ , c("empno","Tot_salary")]
Results |
# A tibble: 14 x 2
empno Tot_salary
<dbl> <dbl>
1 7369 NA
2 7499 480000
3 7521 625000
4 7566 NA
5 7654 1750000
6 7698 NA
7 7782 NA
8 7788 NA
9 7839 NA
10 7844 0
11 7876 NA
12 7900 NA
13 7902 NA
14 7934 NA
4. R Dplyr Package
- emp 테이블에 총급여 칼럼을 추가 후에 select 구문을 사용하여서 사원번호와 총급여를 선택 후 출력
R Programming |
%%R
emp %>% mutate(Tot_salary = sal * comm) %>% select(empno, Tot_salary)
Results |
# A tibble: 14 x 2
empno Tot_salary
<dbl> <dbl>
1 7369 NA
2 7499 480000
3 7521 625000
4 7566 NA
5 7654 1750000
6 7698 NA
7 7782 NA
8 7788 NA
9 7839 NA
10 7844 0
11 7876 NA
12 7900 NA
13 7902 NA
14 7934 NA
5. R sqldf Package
- emp 테이블에서 사원번호와, 총급여(sal*comm)를 출력.
R Programming |
%%R
require(sqldf)
sqldf("select empno, sal*comm Tot_salary from emp")
Results |
empno Tot_salary
1 7369 NA
2 7499 480000
3 7521 625000
4 7566 NA
5 7654 1750000
6 7698 NA
7 7782 NA
8 7788 NA
9 7839 NA
10 7844 0
11 7876 NA
12 7900 NA
13 7902 NA
14 7934 NA
6. Python pandasql Package
- emp 테이블에서 사원번호와, 총급여(sal*comm)를 출력.
Python Programming |
ps.sqldf("select empno, sal*comm Tot_salary from emp")
Results |
empno | Tot_salary | |
0 | 7369 | NaN |
1 | 7499 | 480000.0 |
2 | 7521 | 625000.0 |
3 | 7566 | NaN |
4 | 7654 | 1750000.0 |
5 | 7698 | NaN |
6 | 7782 | NaN |
7 | 7788 | NaN |
8 | 7839 | NaN |
9 | 7844 | 0.0 |
10 | 7876 | NaN |
11 | 7900 | NaN |
12 | 7902 | NaN |
13 | 7934 | NaN |
7. R data.table Package
- emp 테이블에서 사원번호와, 총급여(sal*comm)를 생성하여서 출력.
R Programming |
%%R
DT <- data.table(emp)
dept_DT <- data.table(dept)
DT[ , .(ename, Tot_salary = sal*comm)]
Results |
ename Tot_salary
1: SMITH NA
2: ALLEN 480000
3: WARD 625000
4: JONES NA
5: MARTIN 1750000
6: BLAKE NA
7: CLARK NA
8: SCOTT NA
9: KING NA
10: TURNER 0
11: ADAMS NA
12: JAMES NA
13: FORD NA
14: MILLER NA
8. SAS Proc SQL
SAS Programming |
%%SAS sas
PROC SQL;
create table statsas_1 as
select ename,
SAL*COMM AS TOT_SALARY
from emp;
QUIT;
PROC PRINT DATA=statsas_1(obs=5);RUN;
Results |
OBS | ename | TOT_SALARY |
1 | SMITH | . |
2 | ALLEN | 480000 |
3 | WARD | 625000 |
4 | JONES | . |
5 | MARTIN | 1750000 |
9. SAS Data Step
SAS Programming |
%%SAS sas
DATA statsas_2;
SET EMP;
TOT_SALARY = SAL*COMM;
keep ename tot_salary;
RUN;
PROC PRINT DATA=statsas_2(obs=5);RUN;
Results |
OBS | ename | TOT_SALARY |
1 | SMITH | . |
2 | ALLEN | 480000 |
3 | WARD | 625000 |
4 | JONES | . |
5 | MARTIN | 1750000 |
10. Python Dfply Package
Python Programming |
emp >> \
mutate(Tot_salary = X.sal*X.comm) >> \
select(X.empno, X.Tot_salary) >> \
head(3)
Results |
empno | Tot_salary | |
0 | 7369 | NaN |
1 | 7499 | 480000.0 |
2 | 7521 | 625000.0 |
[SQL, Pandas, R Prog, Dplyr, SQLDF, PANDASQL, DATA.TABLE] SQL EMP 예제로 만나는 테이블 데이터 처리 방법 리스트
반응형
'통계프로그램 비교 시리즈 > 프로그래밍비교(Oracle,Python,R,SAS)' 카테고리의 다른 글
[관측치 선택] 조건문을 만족하는 관측치 출력 - 7 (0) | 2021.08.04 |
---|---|
[변수 생성 & 결측치 대체] 결측치 대체 후 신규 변수 생성 - 6 (0) | 2021.08.04 |
[변수 선택] 특정 변수를 지정하여서 데이터 출력 - 4 (0) | 2021.08.03 |
[변수 선택] 특정 변수를 지정하여서 데이터 출력 - 3 (0) | 2021.08.03 |
[데이터 출력] 데이터세트(테이블) 출력 - 2 (0) | 2021.08.03 |
댓글