SAS:如何创建像1,2,3,4,...,N这样的变量

时间:2019-03-04 19:51:18

标签: sas

我需要为课程的回归模型引入时间趋势,但不知道如何创建仅(1,2,3,4,...,108)的变量。在R或Python中,我只创建一个0的空向量,然后循环以循环索引填充它们,但是我不知道如何在SAS中进行操作。

提前谢谢

1 个答案:

答案 0 :(得分:1)

data want;
    set have;
    time_trend+1;
run;

SAS是一种固有的循环语言。上面的代码完成了四件事:

  1. 阅读一行
  2. 将1加到名为time_trend的变量中
  3. 将行输出到名为want的数据集中
  4. 阅读下一行并再次执行语句

SAS在编译时自动为我们初始化了变量time_trend,因此我们不需要声明长度或类型。 SAS默认情况下假定它是一个数字变量。

语句time_trend+1是以下逻辑的特殊快捷方式:

data want;
   set have;
   retain time_trend 0;

   time_trend = time_trend + 1;
run;