新手在SAS中读取数据(读取日期和100分问题)

新手在SAS中读取数据(读取日期和100分问题),sas,Sas,问题是:第一行是标题行,不应读取(使用填充选项firstobs=2)。其余行包含和ID号(字符)。性别(性格)、出生日期、出生日期和2分。请注意,分数缺少一些值,您需要确保SAS不会转到新行读取这些值。写入SAS数据步骤以读取日期为9的DOB。以下是数据行(为了节省空间,我将其放在代码中) 我的输出是: OBS ID GENDER DOB SCORE1 SCORE2 1 1 M . . 99 2 2 F . 89

问题是:第一行是标题行,不应读取(使用填充选项firstobs=2)。其余行包含和ID号(字符)。性别(性格)、出生日期、出生日期和2分。请注意,分数缺少一些值,您需要确保SAS不会转到新行读取这些值。写入SAS数据步骤以读取日期为9的DOB。以下是数据行(为了节省空间,我将其放在代码中)

我的输出是:

OBS ID GENDER DOB SCORE1 SCORE2
1    1    M     .    .       99      
2    2    F     .    89      .
3    3    M     .    90      98
如果我在程序中指定空格的数量并使用指针,我不理解为什么程序会以这种方式读取


谢谢你的帮助

您的问题从SCORE1和SCORE2开始您的指针控件指定不正确。还要注意,1OO不是100。使用列表输入和misshover infle语句选项可以轻松读取此文件

DATA READ;                                                                                                                              
   INFILE DATALINES FIRSTOBS=2 missover;
   informat id $3. gender $1. dob mmddyy10.;
   input ID GENDER DOB SCORE1 SCORE2;
   format dob mmddyy10.;
   datalines; 
***Header line: ID GENDER DOB SCORE1 SCORE2                                                                                             
001 M 10/10/1976 1OO 99                                                                                                                 
002 F 01/01/1960 89                                                                                                                     
003 M 05/07/2001 90 98                                                                                                                  
;;;;                   
   run;

DATA READ;                                                                                                                              
   INFILE DATALINES FIRSTOBS=2 missover;
   informat id $3. gender $1. dob mmddyy10.;
   input ID GENDER DOB SCORE1 SCORE2;
   format dob mmddyy10.;
   datalines; 
***Header line: ID GENDER DOB SCORE1 SCORE2                                                                                             
001 M 10/10/1976 1OO 99                                                                                                                 
002 F 01/01/1960 89                                                                                                                     
003 M 05/07/2001 90 98                                                                                                                  
;;;;                   
   run;