如何确定数组的长度?

时间:2016-05-28 15:30:12

标签: arrays sas

如果我在转置后不知道数组的确切长度,有没有办法输出它?或者使用它,而无需手动查看输出数据? 例如,如果我转移分配的药丸数量,但该数字对于每个'id'是可变的,然后我想在回归中指定该数组,有没有办法在没有通过手动视觉检查找到值的情况下这样做?

PROC PHREG DATA=...;
ARRAY start{*} start1-start????;
DO I=1 TO ?????;
IF  start{I}<t2event THEN var=1;
END;
MODEL .........

作为必然结果,如果我知道它少于100,而且我指定100,那会有什么后果吗? 谢谢!

2 个答案:

答案 0 :(得分:11)

DIM()函数返回数组的尺寸。您可以使用:suffix来创建以相同字母开头的名称的变量列表。

 ARRAY start{*} start: ;
 DO I=1 TO dim(start);

答案 1 :(得分:0)

你也可以使用do over loop:

$ clang++ -std=c++14 -Wall -W -pedantic example.cc -o example
$ ./example
Event payload value: 123