SAS연습200제/SAS데이터셋활용하기
Q_02_17. SET문과 INPUT 문을 동시에 사용하는 경우
sas
2025. 3. 18. 21:35
SET 문과 INPUT 문을 동시에 사용하는 경우는 주로 외부 파일에서 데이터를 읽어와 기존 데이터셋과 결합할 때 발생합니다. SET 문은 SAS 데이터셋을 불러오는 데 사용하고, INPUT 문은 데이터 라인에서 직접 데이터를 읽어와 새로운 변수로 저장할 때 사용됩니다.
일반적으로 SET 문과 INPUT 문은 동시에 사용되지 않지만, 두 개를 함께 사용할 수 있는 경우는 DATA 스텝에서 SAS 데이터셋(SET 문 사용)과 함께 추가로 외부 데이터를 DATALINES나 CARDS(이전 버전 용어)를 통해 입력할 때입니다.
예제: SET과 INPUT을 동시에 사용하기
다음 예제는 기존의 SAS 데이터셋과 외부에서 직접 입력한 데이터를 결합하는 경우를 보여줍니다.
data work.combined_data;
set sashelp.class; /* 기존 데이터셋 불러오기 */
input new_id name $ age height weight; /* 외부에서 직접 입력한 데이터 */
datalines;
101 James 15 67.5 112
102 Linda 14 62.8 98
103 Robert 16 70.2 123
;
run;
proc print data=work.combined_data;
run;
설명
- SET sashelp.class; : sashelp.class 데이터셋을 불러옵니다.
- INPUT new_id name $ age height weight; : 새로운 데이터를 직접 입력하여 추가합니다.
- new_id, name, age, height, weight 변수들을 새롭게 정의합니다.
- $는 문자형 변수(name)를 지정할 때 사용합니다.
- DATALINES : 외부 데이터를 직접 입력할 때 사용하는 키워드로, 각 행에 해당 데이터를 추가할 수 있습니다.
이 코드는 기존의 sashelp.class 데이터셋과 새롭게 입력한 데이터를 결합하여 combined_data라는 하나의 데이터셋으로 만듭니다. new_id와 같은 새로운 변수와 기존 데이터셋의 변수를 함께 사용할 수 있어 유용합니다.
주의사항
- SET 문을 사용하는 경우, INPUT 문으로 지정하는 변수명은 기존 데이터셋에 이미 존재하는 변수명과 겹치지 않도록 주의해야 합니다.
- INPUT 문으로 입력한 데이터는 DATALINES 또는 CARDS 문을 사용해야 하며, 한 번에 데이터셋 전체에 적용되는 것이 아니라 직접 입력한 데이터에만 적용됩니다.
이 방법을 통해 기존의 SAS 데이터셋과 외부 데이터 또는 직접 입력한 데이터를 결합하여 다양한 방식으로 활용할 수 있습니다.