Statistics & Data Science/SAS

[SAS / SQL] 데이터 출력 조건 지정 : 중복 제거(NODUPKEY)

Ariella 2022. 11. 17. 16:04
반응형

 

 

 

cf) 사용 데이터셋 : company

LIBNAME ss "C:\DATA22" ; /*라이브러리 지정*/

 

 


 

 

1. BASE PROC 용법

 

✔️ formula

PROC SORT DATA=데이터셋 명 OUT=새 데이터셋 명 NODUPKEY ;
    BY 기준변수 ;
RUN ;

 

✔️ example

 

- age 기준 중복 행 제거

📌 code
PROC SORT DATA=ss.company OUT=acompany1 NODUPKEY ;
    BY age ;
RUN ;

PROC PRINT ; RUN ; /*결과 출력하기*/


📌 result

 

- type과 age가 중복되는 행 제거, type 기준 내림차순 정렬, age 기준 오름차순 정렬 (2개 행 제거됨)

📌 code
PROC SORT DATA=ss.company OUT=dscompany1 NODUPKEY ;
    BY type DESCENDING age ;
RUN ;

PROC PRINT ; RUN ;​


📌 result

 

 


 

 

2. SQL 용법

 

✔️ formula

PROC SQL ;
    SELECT DISTINCT 기준변수
    FROM 데이터셋 명 ;
QUIT ;

 

✔️ example

 

- age 기준 중복 행 제거

📌 code
PROC SQL ;
    SELECT DISTINCT age
	FROM ss.company ;
QUIT ;​


📌 result

age 열만 출력

 

- type과 age가 중복되는 행 제거, type 기준 내림차순 정렬, age 기준 오름차순 정렬 (2개 행 제거됨)

📌 code
PROC SQL ;
    SELECT DISTINCT type, age
    FROM ss.company ;
    ORDER BY type, DESCENDING age ;
QUIT ;​

📌 result

 

 


 

 

 

 

 

 

반응형