SAS使用输入命令添加变量

时间:2016-10-24 17:48:00

标签: sas

我是SAS的完整新手。

我下载的sas文件有以下几行。

 IF (&IYEAR=2001 AND &FQTR>=2) THEN DO;
     INFILE &FILE LRECL=6217; 
          INPUT    @1 NEWID 8.    @663 QINTRVMO $2.   @665 QINTRVYR $4. @331 FINLWT21 11.3
        @3221 LIFINSPQ 12.4 +0 LIFINSCQ 12.4 @3245 RETPENPQ 12.4  +0 RETPENCQ 12.4 @1445 FDMAPPQ 12.4 +0 FDMAPCQ 12.4;

从消费者支出调查中选择使用哪些变量。

但我无法理解其逻辑。

首先

是什么
@3221 LIFINSPQ 12.4 +0 LIFINSCQ 12.4

意思?

变量列表位于:http://www.bls.gov/cex/2010/csxintvw.pdf

它说了以下内容。

enter image description here

所以," @ 3221"似乎是指变量的起点。

但是" 12.4"和" + 0" ?

第二次

是什么
@663 QINTRVMO $2.

意思?

enter image description here

从这张照片中可以看出" 663"是变量的起点。

但是" $ 2"意思?我们为什么需要那个?

1 个答案:

答案 0 :(得分:1)

@3221 LIFINSPQ 12.4 +0 LIFINSCQ 12.4

你是正确的@3221告诉SAS文件指针查找该变量的位置。

12.4是信息,SAS应如何读取变量。使用接下来的12个空格,其中小数点后面有4个。

+0是另一个指针控件。因为下一个变量在前一个变量之后开始,所以你告诉SAS不要前进指针。只需拿起你不读的地方。

@663 QINTRVMO $2.

$2.是另一个信息。在这里,您告诉SAS这是一个字符变量($),宽度为2个字符。