Sas에서 if-then-do를 사용하는 방법(예제 포함)


조건이 true 인 경우 SAS에서 IF-THEN-DO 문을 사용하여 문 블록을 수행 할 수 있습니다.

이 문은 다음 기본 구문을 사용합니다.

 if var1 = " value " then do ;
    new_var2 = 10;
    new_var3 = 5;
end ;

참고 : IF-THEN 문은 단일 문을 수행하려는 경우에 사용됩니다. IF-THEN-DO 문은 여러 문을 수행하려는 경우에 사용됩니다.

다음 예에서는 IF-THEN-DO 문을 실제로 사용하는 방법을 보여줍니다.

예: SAS의 IF-THEN-DO

연속된 날짜에 두 매장의 총 매출을 보여주는 다음과 같은 데이터 세트가 SAS에 있다고 가정해 보겠습니다.

 /*create dataset*/
data original_data;
    input store $sales;
    datalines ;
At 14
At 19
At 22
At 20
At 16
At 26
B40
B43
B29
B 30
B35
B 33
;
run ;

/*view dataset*/
proc print data = original_data; 

다음 IF-THEN-DO 문을 사용하여 저장소가 원본 데이터세트에서 “A”와 같을 경우 특정 값을 취하는 두 개의 새로운 변수를 생성할 수 있습니다.

 /*create new dataset*/
data new_data;
set original_data;
if store = " A " then do ;
    region=" East ";
    country=" Canada ";
end ;
run ;

/*view new dataset*/
proc print data =new_data; 

SAS의 IF-THEN-DO 문

이 코드가 작동하는 방식은 다음과 같습니다.

상점이 “A”인 경우 지역 이라는 새 변수는 “동부” 값으로 생성 되고 국가 라는 새 변수는 값 “캐나다”로 생성됩니다.

여러 IF-THEN-DO 문을 사용할 수도 있습니다.

 /*create new dataset*/
data new_data;
set original_data;

if store = " A " then do ;
    region=" East ";
    country=" Canada ";
end ;

    if store = " B " then do ;
    region=" West ";
    country=" USA ";
    end ; 
run ;

/*view new dataset*/
proc print data =new_data; 

이 코드가 작동하는 방식은 다음과 같습니다.

  • 상점이 “A”인 경우 지역 이라는 새 변수는 “동부” 값으로 생성되고 국가 라는 새 변수는 값 “캐나다”로 생성됩니다.
  • 상점이 “B”인 경우 지역 값은 “West”이고 국가 값은 “United States”입니다.

추가 리소스

다음 튜토리얼에서는 SAS에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

SAS에서 데이터를 정규화하는 방법
SAS에서 중복을 제거하는 방법
SAS에서 누락된 값을 0으로 바꾸는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다