【问题标题】:Reading a comma-delimited file into SAS将逗号分隔的文件读入 SAS
【发布时间】:2012-03-17 23:43:36
【问题描述】:

如何将 .txt 格式的文件读入 SAS:

"A","B","C",...
n1,n2,n3...
m1,m2,m3...
p1,p2,p3...
.
.
.

其中 n*、m*、p* 等表示数值。我真的需要指定所有的标题,比如

INPUT A B C D E F G ...

或者有更简洁的方法吗?

【问题讨论】:

    标签: sas


    【解决方案1】:

    如果您真的想将变量命名为 A, B, C, ...,这有点棘手,但如果您愿意将它们命名为 var1, var2, ... 之类的名称,那么这将起作用:

    data test;
     infile 'data.txt' dlm=',';
     input var1-var5;
    run;
    

    当您说var1-var5 时,SAS 会自动生成变量var1, var2, var3, var4, var5

    【讨论】:

    • 谢谢,但我如何修改它以导入逗号分隔的 .txt 文件?
    • 我更新了答案,以便它可以读取逗号分隔的文件。
    【解决方案2】:

    另一种方法是使用文件菜单中的导入数据向导。只需确保选择分隔文件并在下一个屏幕的选项按钮中输入“,”作为分隔符。使用向导并不总是创建正确的字段类型,但是如果您在导入完成后从编辑器中按 F4 键,它将调用它使用的完整代码(包括所有列标题的输入语句)。然后,您可以编辑代码以适合。

    【讨论】:

      【解决方案3】:

      要将分隔的文本文件读入 SAS 数据集,请使用 PROC IMPORT:

      proc import datafile='<path to delimited file>'
      out=mydata  /* SAS data set to create */
      dbms=dlm
      replace;
      
      delimiter=','  /* Specify the delimiter */;
      getnames=yes;  /* Get variable names from first row */
      run;
      

      这与您使用导入数据向导时实际执行的代码相同。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-08-19
        • 2023-03-15
        • 2021-05-24
        • 2013-03-25
        • 2023-02-02
        • 1970-01-01
        • 2021-02-26
        • 2018-06-30
        相关资源
        最近更新 更多