Вы можете использовать функцию tranwrd() для замены символов в строке в SAS.
Вот два наиболее распространенных способа использования этой функции:
Способ 1: заменить символы в строке новыми символами
data new_data;
set original_data;
new_variable = tranwrd (old_variable, " OldString", " NewString ");
run ;
Способ 2: заменить символы в строке пробелами
data new_data;
set original_data;
new_variable = tranwrd (old_variable, " OldString", "");
run ;
В следующих примерах показано, как использовать каждый метод со следующим набором данных в SAS:
/\*create dataset\*/
data original_data;
input team $1-20;
datalines ;
Angry Bees
Angry Hornets
Wild Mustangs
Kind Panthers
Kind Cobras
Wild Cheetahs
Wild Aardvarks
;
run ;
/\*view dataset\*/
proc print data =original_data;
Пример 1. Замена символов в строке новыми символами
Следующий код показывает, как заменить слово «Wild» в переменной team на слово «Fast»:
/\*replace "Wild" with "Fast" in team variable\*/
data new_data;
set original_data;
new_team = tranwrd (team, " Wild", " Fast ");
run ;
/\*view new dataset\*/
proc print data =new_data;
Обратите внимание, что каждая команда, в названии которой было слово «Дикий», теперь имеет слово «Быстрая».
Любая команда, в названии которой не было слова «Wild», просто сохранила свое первоначальное название.
Пример 2. Замена символов в строке пробелами
В следующем коде показано, как заменить слово «Wild» в переменной команды пробелом:
/\*replace "Wild" with a blank in team variable\*/
data new_data;
set original_data;
new_team = tranwrd (team, " Wild", "");
run ;
/\*view new dataset\*/
proc print data =new_data;
Обратите внимание, что любая команда, в названии которой было слово «Дикий», просто заменяла слово «Дикий» пробелом.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:
Как нормализовать данные в SAS
Как заменить пропущенные значения нулем в SAS
Как удалить дубликаты в SAS