SAS 数组声明

SAS Array Declaration

我正在阅读 SAS code for calculating NBBO,我发现了以下代码:

array nexb nexb:; array nexo nexo:; array sexb sexb:; array sexo sexo:;

我想知道语句 array nexb nexb:; 在这里做什么?

两件事:

nexb: 是带有通配符的变量列表。它扩展到 PDV 在数据步骤 中以 nexb 开头的所有变量的列表。所以很可能与 nexb1-nexb17 相同(虽然不知道 set 语句中的数据集中有什么)。它是相同的,只是用来让稍后更改 17 变得更容易,而不必这样做两次。

array nexb nexb:创建一个数组,它只是一个有组织的变量列表,让你可以说nexb[1]而不是nexb1,这比[1]更有用可以是 [i] 或其他一些变量,而 nexb1 不能。因此,它允许您一次一个地浏览变量列表并使用或更改它们。该数组本身不存在于数据集中,也不是持久的,它只是一种引用变量的shorthand方式。