Як використовувати функцію substr у sas (з прикладами)
Ви можете використовувати функцію SUBSTR у SAS, щоб витягнути частину рядка.
Ця функція використовує такий базовий синтаксис:
SUBSTR(Джерело, Позиція, N)
золото:
- Джерело : канал для аналізу
- Позиція : початкова позиція для читання
- N : кількість символів для читання
Ось чотири найпоширеніші способи використання цієї функції:
Спосіб 1. Витягніть перші N символів із рядка
data new_data;
set original_data;
first_four = substr (string_variable, 1 , 4 );
run ;
Спосіб 2. Витягніть із рядка символи в певному діапазоні позицій
data new_data;
set original_data;
two_through_five = substr (string_variable, 2 , 4 );
run ;
Спосіб 3. Витягніть останні N символів із рядка
data new_data;
set original_data;
last_three = substr (string_variable, length (string_variable)- 2 , 3 );
run ;
Спосіб 4. Створіть нову змінну, якщо в рядку є символи
data new_data;
set original_data;
if substr (string_variable, 1 , 4 ) = ' some_string ' then new_var = ' Yes ';
else new_var = ' No ';
run ;
У наведених нижче прикладах показано, як використовувати кожен метод із таким набором даних у SAS:
/*create dataset*/
data original_data;
input team $1-10;
datalines ;
Warriors
Wizards
Rockets
Celtics
Thunder
;
run ;
/*view dataset*/
proc print data = original_data;
Приклад 1: вилучення перших N символів із рядка
Наступний код показує, як отримати перші 4 символи зі змінної team :
/*create new dataset*/
data new_data;
set original_data;
first_four = substr (team, 1 , 4 );
run ;
/*view new dataset*/
proc print data = new_data;
Зверніть увагу, що змінна first_four містить перші чотири символи змінної team .
Приклад 2: Вилучення символів у певному діапазоні позицій із рядка
Наступний код показує, як отримати символи з позицій 2–5 змінної team :
/*create new dataset*/
data new_data;
set original_data;
two_through_five = substr (team, 2 , 4 );
run ;
/*view new dataset*/
proc print data = new_data;
Приклад 3: вилучення останніх N символів із рядка
Наступний код показує, як витягти останні 3 символи зі змінної team :
/*create new dataset*/
data new_data;
set original_data;
last_three = substr (team , length (team) -2,3 );
run ;
/*view new dataset*/
proc print data = new_data;
Приклад 4: Створіть нову змінну, якщо в рядку є символи
У наступному коді показано, як створити нову змінну під назвою W_Team , яка має значення « так », якщо першим символом назви команди є «W», або « ні », якщо перші символи не є «W».
/*create new dataset*/
data new_data;
set original_data;
if substr (team, 1 , 1 ) = ' W ' then W_Team = ' Yes ';
else W_Team = ' No ';
run ;
/*view new dataset*/
proc print data = new_data;
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в SAS:
Як нормалізувати дані в SAS
Як замінити символи в рядку в SAS
Як замінити пропущені значення на нуль в SAS
Як видалити дублікати в SAS