SAS / Table

ljeun·2021년 4월 25일
0

SAS

목록 보기
2/3

SAS 내에서 PROC SQL 구문을 사용한 테이블 생성 및 수정 코드


테이블 생성

빈 테이블 생성

생성하고 싶은 변수와 각 type을 지정

/*SQL구문 사용*/
PROC SQL;
CREATE TABLE PATH.TABLE_NAME
(col1 CHAR(8), /*8자리 문자열 변수 col1 생성*/
col2 NUM, /*숫자형 변수 col2 생성*/
col3 NUM,
...
col4 CHAR(15)
);
QUIT; 

기존에 있는 데이터를 불러와서 테이블 생성

기존에 있는 dataset을 가져와서 새로운 table 생성

/*SQL구문 사용*/
PROC SQL;
CRAETE TABLE PATH.TABLE_NAME AS
SELECT * /*모든 변수 가져오기*/
FROM PATH.DATASET /*기존 데이터 가져오기*/
QUIT;

테이블 병합

열(column) 기준

두 개 이상의 테이블을 열(column)을 기준으로 하여 위-아래로 병합

  • 같은 의미의 변수라면, 변수명을 통일시키고 이 과정을 진행해야 함
DATA PATH.TABLE_NAME;
SET PATH.TABLE1 PATH.TABLE2 PATH.TABLE3 ... ; /*병합하려는 파일 목록*/
RUN;

행(raw) 기준

두 개 이상의 테이블을 행(raw)를 기준으로 하여 양옆으로 병합

/*SQL구문 사용*/
PROC SQL;
CRAETE TABLE PATH.TABLE_NAME AS
SELECT t1.*, t2.*
FROM PATH.TABLE1 t1
INNER JOIN PATH.TABLE2 t2 ON (t1.col_name = t2.col_name); /*INNER,LEFT,RIGHT JOIN 모두 가능*/
QUIT;

테이블 전치(Transpose)

테이블을 원하는 형태에 맞춰 transpose하는 과정

  • BY에 사용하는 변수들은 PROC SORT를 통해 정렬한 후 사용해야 함
PROC TRANSPOSE DATA=PATH.USING_TABLE OUT=PATH.OUTPUT_TABLE;
BY col_name1; /*by: 기준 변수(raw)*/
ID col_name2; /*id: 전치되어 새로 만들어지는 변수(column)*/
VAR col_name3; /* var: 새로 만들어지는 column에 들어갈 값*/
RUN;

0개의 댓글