Як використовувати функцію findc у sas


Ви можете використовувати функцію FINDC у SAS, щоб повернути позицію першого входження окремого символу в рядку.

Ця функція використовує такий базовий синтаксис:

FINDC (рядок, список танків)

золото:

  • string : Рядок для аналізу
  • charlist : список символів для пошуку в джерелі

У наступному прикладі показано, як використовувати цю функцію на практиці.

Приклад: використання функції FINDC у SAS

Припустімо, у 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; 

Ми можемо використовувати функцію FINDC , щоб знайти позицію першого входження символів x , y або z :

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

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

Новий стовпець під назвою first_xyz відображає позицію першого входження символів x , y або z у стовпці імені .

Якщо в стовпці імені немає жодного з цих трьох символів, функція FINDC просто повертає значення 0 .

Наприклад, з результату ми можемо побачити:

Позиція першого входження x, y або z у першому рядку – це позиція 4 . Ми бачимо, що символ у позиції 4 у першому рядку є y .

Позиція першого входження x, y або z у другому рядку дорівнює 0 , оскільки жодна з цих трьох літер не існує в назві другого рядка.

І так далі.

Різниця між функціями FIND і FINDC

Функція FIND у SAS повертає позицію першого входження певного підрядка в інший рядок.

Наступний приклад ілюструє різницю між функціями FIND і FINDC :

 /*create new dataset*/
data new_data;
    set original_data;
    find_smith = find (name, 'Smith');
    findc_smith = findc (name, 'Smith');
run ;

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

Стовпець find_smith відображає позицію першого входження підрядка “Smith” у стовпці імені .

Стовпець findc_smith відображає позицію першого входження літер s , m , i , t або h у стовпці імені .

Наприклад, з результату ми можемо побачити:

Підрядок «Smith» ніколи не з’являється в першому імені, тому find_smith повертає значення 0 .

Літера i з’являється на сьомій позиції імені, тому findc_smith повертає значення 7 .

І так далі.

Додаткові ресурси

У наступних посібниках пояснюється, як використовувати інші поширені функції в SAS:

Як використовувати функцію FIND у SAS
Як використовувати функцію SUBSTR у SAS
Як використовувати функцію СТИСНУТИ в SAS

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *