Як отримати числа з рядка в sas


Найпростіший спосіб вилучення чисел із рядка в SAS — це використання функції COMPRESS із модифікатором «A».

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

 data new_data;
    set original_data;
    numbers_only = compress(some_string, '', ' A ');
run ;

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

Приклад: вилучення чисел із рядка в SAS

Припустімо, що ми маємо такий набір даних у SAS, який показує назви різних університетських курсів:

 /*create dataset*/
data original_data;
    input course $12.;
    datalines ;
Stats101
Economics203
Business201
Botany411
Calculus101
English201
Chemistry402
Physics102
;
run ;

/*view dataset*/
proc print data = original_data; 

Ми можемо використати наступний код, щоб отримати лише числа з назви кожного курсу:

 /*extract numbers from course column*/
data new_data;
    set original_data;
    course_number_only = compress (course, '', ' A ');
run ;

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

Зверніть увагу, що новий стовпець під назвою course_number_only містить лише числа з рядків у стовпці курсу .

Якщо натомість ви хочете отримати лише символи з кожного рядка, ви можете використати функцію СТИСНУТИ з модифікатором «d»:

 /*extract characters from course column*/
data new_data;
    set original_data;
    course_characters_only = compress (course, '', ' d ');
run ;

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

Зверніть увагу, що новий стовпець під назвою course_characters_only містить лише числа з рядків у стовпці курсу .

Примітка . Ви можете знайти повний список модифікаторів для функції COMPRESS на цій сторінці документації SAS .

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

У наступних посібниках пояснюється, як виконувати інші типові завдання в SAS:

Як нормалізувати дані в SAS
Як визначити викиди в SAS
Як створити частотні таблиці в SAS

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

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