Зацикливание имен в SAS-IML?

Как я могу прочитать набор данных SAS с именем, заданным как stem + суффикс в IML? Стебель задан как макропеременная SAS, достаточное количество, которое я намереваюсь использовать, находится в строковом векторе в IML.

В R я бы использовал

suffix<-c('s1','s2')
for (s in suffix){
   data<-eval(as.name(paste(stem,s,sep='')))
}

Я мог бы сделать цикл, если бы у меня был код для первого набора данных. Я пытался:

proc iml;
suffices = {'s1','s2'};
call symput('suffix',suffices[1]);
use &stem.&suffix.;

Проблема в том, что если в цикле do (и мне нужно это, когда я перебираю имена), call symput на самом деле не работает.Вот я нашел symget, но в контексте использования & stem.symget ('суффикс') не был плодотворным.

Есть другие идеи?

Изменить: я нашел следующее довольно не элегантное решение:

proc iml;
%global suff;
suffix={'s1','s2','s3'};
%do ii = 1 %to 3;
call symput('suff',suffix[&ii.]);
<do stuff based on the suffix>
%end;

Тем не менее, я не чувствую, что так надо работать.

Ответы на вопрос(2)

Ваш ответ на вопрос