我正在使用SAS Enterprise指南,并提供如下表格:
period year_1 year_2 year_3
1 100 200 300
2 100 200 300
3 100 200 300
我想引用一行:
data table;
set input;
chosen_year = year_%eval(period);
run;
因此period
列的值应确定chosen_year
列的结果。我怎么能这样做?
答案 0 :(得分:1)
您可以将period
变量用作数组索引。
SAS中的数组只是变量的集合。因此,您可以在此处将year_1 - year_3
分配给数组(然后将year_1 year_2 year_3
放入该数组中)并使用period
选择列表中的“period_th”条目。
如果它比上面的变量名更复杂,你有其他选择(包括,可能是最初链接的副本 - 虽然对于上面的问题,这个副本是过度的)。
data table;
set input;
array year[*] year_1-year_3;
chosen_year = year[period];
run;