SAS의 TABLE 내에 있는 변수 관련 코드
테이블 내에 새로운 변수를 생성 및 수정하는 과정
- DATA SET 사용
- PROC SQL 내 CASE 사용
/*1) DATA SET 사용*/
DATA PATH.OUTPUT_TABLE;
SET PATH.USING_TABLE;
/*새로운 변수 생성*/
IF col_name =. THEN new_col =0;
ELSE IF col_name =0 THEN new_col =1;
ELSE new_col =2;
/*기존 변수 수정*/
IF col_name1 =. THEN col_name1 =0;
RUN;
/*2) PROC SQL내 CASE 사용*/
PROC SQL;
CREATE TABLE PATH.OUTPUT_TABLE AS
SELECT t1.*,
/*새로운 변수 생성*/
CASE(WHEN t1.col_name1 IS MISSING THEN 0
WHEN t1.col_name1 =0 THEN 1
ELSE 2) AS new_col,
/*기존 변수 수정*/
CASE(WHEN t1.col_name2 =. THEN 0
ELSE col_name2) AS col_name2
FROM PATH.USING_TABLE t1;
QUIT;
이미 생성된 변수명을 변경하는 과정
DATA PATH.OUTPUT_TABLE;
RENAME old_col1=new_col1 old_col2=new_col2;
SET PATH.USING_TABLE;
RUN;
테이블 내 모든 변수 목록(변수명+LABEL+유형+길이) 추출
PROC CONTENTS DATA=PATH.TABLE
/*Option 1)저장된 데이터와 동일하게, 변수명+LABEL+유형+길이*/
VARNUM;
/*Option 2)저장된 데이터와 동일하게, 변수명*/
VARNUM SHORT;
RUN;
SAS에서는 각 테이블 내 변수마다 LABEL을 추가할 수 있음
- DATA SET 사용
- PROC SQL 내 LABEL 사용
/*1) DATA SET 사용*/
DATA PATH.TABLE;
SET PATH.TABLE;
LABEL col_name = "쓰고 싶은 LABEL" col_name2 = "쓰고 싶은 LABEL";
RUN;
/*2) PROC SQL내 LABEL 사용*/
PROC SQL;
CREATE TABLE PATH.TABLE AS
SELECT t1.col_name = "쓰고 싶은 LABEL"
FROM PATH.TABLE;
QUIT;