Sas: як видалити коми з рядка


Найпростіший спосіб видалити коми з рядка в SAS — скористатися функцією TRANSLATE , яка перетворює кожне входження символу в інший символ.

Для цього ви можете використовувати такий базовий синтаксис:

 data new_data;
    set original_data;
    string_var = compress ( translate (string_var,"",','));
run ;

У цьому конкретному прикладі видаляється кожна кома з кожного рядка зі змінної string_var у наборі даних.

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

Приклад: видалення ком із рядка в SAS

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

 /*create dataset*/
data my_data;
    input team $points;
    datalines ;
,Mavs, 113
Pacers 95
,Ca,vs 120
Lakers 114
Heat 123
King,s 119
Raptors 105
,Hawks 95
Ma,gic 103
Spu,,rs 119
;
run ;

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

Зауважте, що кілька рядків у стовпці team містять коми в різних місцях.

Ми можемо використати такий синтаксис, щоб видалити всі коми з рядків у стовпці команди :

 /*create new dataset where commas are removed from each string in team column*/
data new_data;
    set my_data;
    team = compress ( translate (team,"",','));
run ;

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

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

Ось що насправді зробив цей код:

  • Кожна функція TRANSLATE замінює кому на пробіл.
  • Потім функція СТИСНУТИ видалила пробіли з кожного рядка.

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

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

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

Як отримати числа з рядка в SAS
Як використовувати функцію SUBSTR у SAS
Як видалити спеціальні символи з рядків у SAS

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

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