Sas: як витягнути правий підрядок
Ви можете використовувати функцію SUBSTR у SAS, щоб витягнути частину рядка.
Ця функція використовує такий базовий синтаксис:
SUBSTR(Джерело, Позиція, N)
золото:
- Джерело : канал для аналізу
- Позиція : початкова позиція для читання
- N : кількість символів для читання
Значення аргументу Position визначає початкову позицію ліворуч від рядка .
Щоб замість цього вказати початкову позицію праворуч від рядка , ви можете використати такий синтаксис:
data new_data;
set original_data;
last_three = substr (team , length (team) -2,3 );
run ;
У цьому конкретному прикладі створюється нова змінна last_three , яка витягує останні три символи праворуч від рядкової змінної team .
У наступному прикладі показано, як використовувати цей синтаксис на практиці.
Приклад: витягти підрядок із Right у SAS
Припустімо, що в SAS є такий набір даних, який містить інформацію про різні баскетбольні команди:
/*create dataset*/
data original_data;
input team $points;
datalines ;
Mavericks 104
Thunder 99
Rockets 116
Spurs 98
Pistons 99
Pelicans 105
Warriors 119
Blazers 113
Nuggets 100
Kings 123
;
run ;
/*view dataset*/
proc print data = original_data;
Ми можемо використати наступний код, щоб отримати останні 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;
Зауважте, що стовпець з назвою last_three містить останні три символи стовпця team .
Ми також можемо легко змінити значення функції SUBSTR , щоб отримати іншу кількість символів з правого боку рядка.
Наприклад, ми можемо використати наступний синтаксис, щоб отримати останні п’ять символів справа:
/*create new dataset*/
data new_data;
set original_data;
last_five = substr (team , length (team) -4,5 );
run ;
/*view new dataset*/
proc print data = new_data;
Зауважте, що стовпець під назвою last_five містить останні п’ять символів стовпця team .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в SAS:
SAS: Як замінити символи в рядку
SAS: Як видалити коми з рядка
SAS: Як отримати числа з рядка