读取txt文件,其中使用sas将相同的变量列在多列中

读取txt文件,其中使用sas将相同的变量列在多列中,sas,Sas,我是SAS的新手。我试图读取一个txt文件,其中相同的变量列在多个列中 第一个变量是日期。第二个是时间,最后一个是血糖。非常感谢你的好意和帮助 诚恳 Wilson可以使用指定的:(格式修改器)和@(行保持)功能读取数据 葡萄糖读数.txt(数据文件) 示例程序 data want; infile "c:\temp\glucose-readings.txt"; input datepart :date9. timepart :time5. glucose @

我是SAS的新手。我试图读取一个txt文件,其中相同的变量列在多个列中

第一个变量是日期。第二个是时间,最后一个是血糖。非常感谢你的好意和帮助

诚恳


Wilson

可以使用指定的
(格式修改器)和
@
(行保持)功能读取数据

葡萄糖读数.txt(数据文件)

示例程序

data want;
  infile "c:\temp\glucose-readings.txt";

  input 
    datepart :date9.
    timepart :time5.
    glucose
  @@;

  datetime = dhms(datepart,0,0,timepart);

  format 
    datepart date9.
    timepart time5.
    datetime datetime19.
    glucose 3.
  ;
;

proc print; run;

从文件中


... 对于数值变量,此格式修饰符从下一个非空列读取值,直到指针到达下一个空列或数据行的末尾,以先到者为准。

@
保存一条输入记录,以便跨数据步骤的迭代执行下一条输入语句。此行保持说明符称为双尾随@。

提示当每个输入行包含多个观测值时,双尾随@非常有用


请务必阅读文档,也就是说,您将找到详细的解释和有用的示例。

如果您喜欢双关语,可以将其语法称为“cleekend”,感谢您@Richard的详细解释。代码成功了。您的数据文件是否真的只使用7个字符作为日期?
data want;
  infile "c:\temp\glucose-readings.txt";

  input 
    datepart :date9.
    timepart :time5.
    glucose
  @@;

  datetime = dhms(datepart,0,0,timepart);

  format 
    datepart date9.
    timepart time5.
    datetime datetime19.
    glucose 3.
  ;
;

proc print; run;