Як використовувати функцію 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