Sas에서 선행 0을 제거하는 방법(예제 포함)


SAS에서 문자 변수의 선행 0을 제거하는 가장 쉬운 방법은 INPUT 함수를 사용하여 변수를 숫자 변수로 변환하는 것입니다. 이렇게 하면 선행 0이 자동으로 제거됩니다.

이 함수는 다음 기본 구문을 사용합니다.

 data new_data;
    set original_data;
    no_zeros = input(some_column, comma9. );
run ;

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: SAS에서 선행 0 제거

다양한 소매점의 총 매출을 보여주는 다음과 같은 데이터 세트가 SAS에 있다고 가정해 보겠습니다.

 /*create dataset*/
data original_data;
    inputstore $sales$;
    datalines ;
A 055
B145
C 199
D 0000443
E 0093
F 00004302
G 38
H 0055
;
run ;

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

다음 코드를 사용하여 판매 열 값에서 선행 0을 모두 제거할 수 있습니다.

 /*remove leading zeros in sales column*/
data new_data;
    set original_data;
    no_zeros = input (sales, order9. );
run ;

/*view results*/
proc print data = new_data; 

SAS는 선행 0을 제거합니다.

no_zeros 열의 값에서 모든 선행 0이 제거되었습니다.

새로운 no_zeros 열은 숫자 열입니다.

대신 문자 열로 유지하려면 다음과 같이 INPUT 함수 주위에 PUT 함수를 래핑할 수 있습니다.

 /*remove leading zeros in sales column*/
data new_data;
    set original_data;
    no_zeros = put ( input (sales, order9. ), 8. );
run ;

/*view results*/
proc print data = new_data; 

SAS는 선행 0을 제거합니다.

proc 콘텐츠를 사용하여 데이터 세트에 있는 각 변수의 데이터 유형을 표시하면 no_zeros가 문자 변수라는 것을 알 수 있습니다.

 /*view data type of each variable in new dataset*/
proc contents data =new_data; 

추가 리소스

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

SAS에서 데이터를 정규화하는 방법
SAS에서 이상값을 식별하는 방법
SAS에서 절차 요약을 사용하는 방법
SAS에서 빈도표를 만드는 방법

의견을 추가하다

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