Sas에서 index 함수를 사용하는 방법(예제 포함)


SAS의 INDEX 함수를 사용하여 다른 문자열에서 문자열이 처음 나타나는 위치를 반환할 수 있습니다.

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

INDEX(소스, 추출)

금:

  • source : 분석할 채널
  • extract : 소스 에서 검색할 문자열

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

예: SAS에서 INDEX 함수 사용

SAS에 이름 열이 포함된 다음 데이터 세트가 있다고 가정해 보겠습니다.

 /*create dataset*/
data original_data;
    input name $25.;
    datalines ;
Andy Lincoln Bernard
Michael Smith
Chad Simpson Arnolds
Derrick Smith Henrys
Eric Millerton Smith
Frank Giovanni Goode
;
run ;

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

INDEX 함수를 사용하여 각 줄에서 “Smith”라는 문자열이 처음 나타나는 위치를 찾을 수 있습니다.

 /*find position of first occurrence of 'Smith' in name*/
data new_data;
    set original_data;
    first_smith = index (name, ' Smith ');
run ;

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

first_smith 라는 새 열은 이름 열에서 ‘Smith’ 문자열이 처음 나타나는 위치를 표시합니다.

‘Smith’가 전혀 발견되지 않으면 INDEX 함수는 단순히 0 값을 반환합니다.

INDEX 함수는 대소문자를 구분하므로 대신 “smith”를 검색하면 INDEX 함수는 각 문자열에 대해 0을 반환합니다.

 /*find position of first occurrence of 'smith' in name*/
data new_data;
    set original_data;
    first_smith = index (name, ' smith ');
run ;

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

대소문자를 구분하지 않고 검색하려면 lowcase() 함수를 사용하여 먼저 각 문자열을 소문자로 변환한 후 다음과 같이 “smith”를 검색하면 됩니다.

 /*find position of first occurrence of 'smith' in name*/
data new_data;
    set original_data;
    first_smith = index ( lowcase (name), ' smith ');
run ;

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

먼저 각 문자열을 소문자로 변환하면 INDEX 함수를 사용하여 대소문자를 구분하지 않고 검색을 수행할 수 있습니다.

추가 리소스

다음 튜토리얼에서는 SAS의 다른 일반적인 기능을 사용하는 방법을 설명합니다.

SAS에서 SUBSTR 함수를 사용하는 방법
SAS에서 COMPRESS 함수를 사용하는 방법
SAS에서 FIND 함수를 사용하는 방법
SAS에서 COALESCE 함수를 사용하는 방법

의견을 추가하다

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