4

我正在阅读用于计算 NBBO 的 SAS 代码,我遇到了以下代码:

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

我想知道该声明array nexb nexb:;在这里做了什么?

4

1 回答 1

5

两件事情:

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

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

于 2017-05-16T16:48:11.190 回答