Sas 数组中的数据集值
我是SAS的新手,我希望我的数据线值存储在数组中 我希望10 20 30存储在一个数组中Sas 数组中的数据集值,sas,Sas,我是SAS的新手,我希望我的数据线值存储在数组中 我希望10 20 30存储在一个数组中 enter code here data array; input num 2.; array arr[3] a1-a3; datalines; 10 20 30 ; run; proc print data=array; 期望值为a1=10;a2=20;a3=30 还不完全清楚你想做什么 这是一种可能性: data array; array arr{*} a1-a3; do i=1 to 3;
enter code here
data array;
input num 2.;
array arr[3] a1-a3;
datalines;
10
20
30
;
run;
proc print data=array;
期望值为a1=10;a2=20;a3=30 还不完全清楚你想做什么 这是一种可能性:
data array;
array arr{*} a1-a3;
do i=1 to 3;
arr{i}=10*i;
end;
output;
drop i;
run;
proc print data=array;
run;
请注意,您不能在datastep之后打印数组的值,因此如果要打印值,它们必须位于dataset数组中的列或行中。在这里,数组映射到变量a1、a2、a3,然后用cards语句也可以使用的循环设置这些变量,但是为什么要使用数组呢?因此,数据集中只有一行
建议阅读:.数组不是SAS中的对象。可以创建数据集,也可以创建宏变量。我怀疑您是SAS的新手,所以我建议您暂时不要使用宏,而是使用数据步骤和SQL 您可以使用这些值创建一个数据集,稍后再使用它们。如果您稍后解释如何使用它们,我们可能会建议适当的数据结构 如果您确实想要数组和矩阵,那么您需要使用PROC IML来实现与基本SAS非常不同、更类似于R/Python的功能
data array;
infile cards missover;
input a b c 2.;
datalines;
10 20 30
;
run;
阵列不是SAS中的对象,它们不存在于数据步骤之外,因此不确定您是否能在此处获得所需的内容。