从SAS中的一行读取多个观察结果

时间:2016-01-20 14:59:34

标签: sas

当读取一行包含多个观察的输入文件时,我们可以使用'@'或'@@'。

我们什么时候应该使用另一个?

1 个答案:

答案 0 :(得分:4)

如果希望指针在数据步骤的下一次迭代中保持在同一位置,请使用double @。如果您只想让指针在数据步骤的当前迭代中保留下一个INPUT语句,那么您只需要使用一个尾随@。

通过多次迭代数据步骤读取一行的示例。

data want;
  id+1;
  input score @@;
cards;
10 20 30 45 
;

在数据步骤的同一次迭代中多次从一行读取的示例。

data want;
  infile cards truncover ;
  input id score @;
  do rep=1 by 1 until (score=.);
    output;
    input score @;
  end;
cards;
1 10 20 30 45 
2 15 32
3 5 6 8 12 13 56
;