我有点问题。我只需要插入到数组(示例)第一个数组,最好按字段插入。 我该怎么做?如果您也指出如何逐列插入(我将来将能够加载选定的列),将不胜感激。
data have;
infile DATALINES dsd missover;
input varr1 varr2 varr3;
CARDS;
1, 2, 3
2, 3, 4
5, 4
4, 3
9, 4, 1
6,
;run;
data want;
set have;
array L[3] _temporary_ ;
if _n_ = 1 then
do;
do i = 1 to 3;
%LET j = i;
L[i] = varr&i; /*in this place I have problem*/
put L[i];
end;
end;
run;
答案 0 :(得分:1)
您不需要宏,也不确定为什么需要临时数组SELECT
REGEXP_SUBSTR ('test1' || CHR(9) || 'test2' || CHR(9) || 'test3', '[^' || CHR(9) || ']+', 1, 1) field1,
REGEXP_SUBSTR ('test1' || CHR(9) || 'test2' || CHR(9) || 'test3', '[^' || CHR(9) || ']+', 1, 2) field2,
REGEXP_SUBSTR ('test1' || CHR(9) || 'test2' || CHR(9) || 'test3', '[^' || CHR(9) || ']+', 1, 3) field3
FROM DUAL
。
array语句可用于组织变量,以便可以以数组方式对其进行访问。循环遍历变量数组以将值复制到临时数组中。
临时数组的元素不可用于输出,并且不可是正常的隐式程序数据矢量(PDV)行为的一部分,该行为会将变量重置为丢失。
L