SAS добавляет префикс ко всем словам в макропеременной - PullRequest
2 голосов
/ 08 апреля 2019

Я добавляю префикс к каждому слову в макропеременной.Однако при использовании моего текущего метода первое слово не получает префикс.Глядя на мой код, есть веская причина для этого, так как перед словом нет пробела.

Код, который я использую:

%LET independent_vars   =   FF_1 FF_4 FF_7 FF_10;
%LET log_independent_vars = %SYSFUNC(TRANWRD(&independent_vars.,%str( ),%str( ln_)));
%PUT &log_independent_vars.;

Текущий вывод: FF_1 ln_FF_4 ln_FF_7ln_FF_10

Ожидаемый результат: ln_FF_1 ln_FF_4 ln_FF_7 ln_FF_10

Я пытался использовать prxchange, но я не понимаю

1 Ответ

2 голосов
/ 08 апреля 2019

Только первый пробел удаляется

Вы можете обойти эту проблему, добавив один 'ln_' перед вашей формулой

%LET independent_vars   =   FF_1 FF_4 FF_7 FF_10;
%LET log_independent_vars = ln_%SYSFUNC(TRANWRD(&independent_vars.,%str( ),%str( ln_)));
%PUT &log_independent_vars.;

ln_FF_1 ln_FF_4 ln_FF_7 ln_FF_10

...