在sas中不使用输入列表方法读取数值

在sas中不使用输入列表方法读取数值,sas,Sas,这就是故事 这是输入文件 mukesh,04/04/15,04/06/15,125.00,333.23 vishant,04/05/15,04/07/15,200.00,200 achal,04/06/15,04/08/15,275.00,55.43 这是我正在使用的导入语句 data datetimedata; infile fileref dlm=','; input lastname$ datechkin mmddyy10. datechkout mmddyy10. room_rat

这就是故事

这是输入文件

mukesh,04/04/15,04/06/15,125.00,333.23
vishant,04/05/15,04/07/15,200.00,200
achal,04/06/15,04/08/15,275.00,55.43
这是我正在使用的导入语句

data datetimedata;
infile fileref dlm=','; 
input lastname$  datechkin mmddyy10. datechkout mmddyy10. room_rate equip_cost;
run;
下面是显示成功的日志

NOTE: The infile FILEREF is:
      Filename=\\VBOXSVR\win_7\SAS\DATA\datetime\datetimedata.csv,
      RECFM=V,LRECL=256,File Size (bytes)=688,
      Last Modified=13Jun2015:12:08:36,
      Create Time=13Jun2015:09:13:09

NOTE: 17 records were read from the infile FILEREF.
      The minimum record length was 34.
      The maximum record length was 40.
NOTE: The data set WORK.DATETIMEDATA has 17 observations and 5 variables.
NOTE: DATA statement used (Total process time):
      real time           0.01 seconds
我在这里只发表了3篇评论

现在,当我打印sas数据集时,除了room\u rate变量之外,其他一切都正常。

输出应该是3位数字,但我只得到最后一位数字。
我哪里做错了

您正在混合输入类型。使用列表输入时,不能指定信息提供者。您需要使用修改后的列表输入(在informat中添加冒号)指定它们,或者在前面使用
informat
语句。下面的工作

data datetimedata;
infile datalines dlm=','; 
input lastname$  datechkin :mmddyy10. datechkout :mmddyy10. room_rate equip_cost;
datalines;
mukesh,04/04/15,04/06/15,125.00,333.23
vishant,04/05/15,04/07/15,200.00,200
achal,04/06/15,04/08/15,275.00,55.43
;;;;
run;

proc print data=datetimedata;
run;

数据日期时间数据;infle fileref dlm=','firstobs=1;输入lastname$datechkin:mmddyy10。日期:mmddyy10。房费、设备费;跑这对我有用。区别是mmddyy10之前的“:”。我是一个初学者。如果你能给我解释一下“:”在这里做什么就好了。你能帮我吗?ddmmyy10之前的“:”有什么用。这就造成了不同的结果。