Sas에서 indexc 함수를 사용하는 방법


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

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

INDEXC(소스, 추출)

금:

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

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

예: SAS에서 INDEXC 함수 사용

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; 

INDEXC 함수를 사용하여 x , y 또는 z 문자가 처음 나타나는 위치를 찾을 수 있습니다.

 /*find position of first occurrence of either x, y or z in name*/
data new_data;
    set original_data;
    first_xyz = indexc (name, 'xyz');
run ;

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

first_xyz 라는 새 열은 이름 열에서 x , y 또는 z 문자가 처음 나타나는 위치를 표시합니다.

이름 열에 이 세 문자 중 어느 것도 없으면 INDEXC 함수는 단순히 0 값을 반환합니다.

예를 들어 결과에서 다음을 확인할 수 있습니다.

첫 번째 행에서 x, y 또는 z가 처음 나타나는 위치는 위치 4 입니다. 첫 번째 줄의 4번째 위치에 있는 문자가 y 임을 알 수 있습니다.

두 번째 행 이름에 이 세 문자가 없기 때문에 두 번째 행에서 x, y 또는 z가 처음 나타나는 위치는 0 입니다.

등등.

INDEX와 INDEXC 함수의 차이점

SAS의 INDEX 함수는 다른 문자열에서 특정 하위 문자열이 처음 나타나는 위치를 반환합니다.

다음 예에서는 INDEX 함수와 INDEXC 함수의 차이점을 보여줍니다.

 /*create new dataset*/
data new_data;
    set original_data;
    index_smith = index (name, 'Smith');
    indexc_smith = indexc (name, 'Smith');
run ;

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

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

indexc_smith 열은 name 열에서 s , m , i , t 또는 h 문자가 처음 나타나는 위치를 표시합니다.

예를 들어 결과에서 다음을 확인할 수 있습니다.

하위 문자열 ‘Smith’는 이름에 전혀 나타나지 않으므로 index_smith는 0 값을 반환합니다.

문자 i는 이름의 7번째 위치에 나타나므로 indexc_smith는7 을 반환합니다.

등등.

추가 리소스

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

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

의견을 추가하다

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