return 数组索引第一个值不丢失 SAS 的函数

Function that return array index first value not missing SAS

我想知道一些函数 return 第一个值的数组索引不丢失。

data test;
    array A[10];

    do i = 1 to 3;
    A(i) = .;
end;

do i = 4 to 10;
    A(i) = i**2;
end;

fr = coalesce(of A(*));
drop i;
run;

合并 return 值,在此示例中为 16,但我想要一个 return 索引的函数,在本例中为 4.

谢谢。

使用 WHICHN() 怎么样?

want = whichn( coalesce(of A(*)), of A(*)) ;

您需要注意所有缺失的情况。