zoukankan      html  css  js  c++  java
  • SAS 中读取文件的方式

    首先明确文件的格式:

    1. 文本文件

    2. xlsx 文件(电子表格文件)

    对于文本文件,由于有很大的变化性,比如使用空格分隔,使用逗号分隔,使用冒号分隔等等,当然也可以按列读取。

     (1)使用空格分隔

    原始数据为:

    1 * 使用空格分隔的文件数据 ;
    2 data temp;
    3 infile "C:UsershrDesktopperson
    aw.txt" delimiter=" ";
    4 input age weight;
    5 run;
    6 
    7 proc print data=temp;
    8 run;

     结果是:

    (2)使用逗号、冒号隔开,只需要将 delimiter= 中的内容换掉即可,其他同上。

    1 * 使用空格分隔的文件数据 ;
    2 data temp;
    3 infile "C:UsershrDesktopperson
    aw.txt" delimiter=",";
    4 input age weight;
    5 run;
    6 
    7 proc print data=temp;
    8 run;

    (3)使用 tab 隔开

    1 * 使用tab分隔的文件数据 ;
    2 data temp;
    3 infile "C:UsershrDesktopperson
    aw.txt" delimiter="09"x;
    4 input age weight;
    5 run;
    6 
    7 proc print data=temp;
    8 run;

    对于 xlsx 文件,和上面两个不太一样。

    原始数据为:

    (1)使用 sql 语句进行读取

     1 * 读取表格文件的方法 ;
     2 /* 第一种使用 sql 语句 */
     3 proc sql;
     4 connect to excel(path="C:UsershrDesktopperson
    aw.xlsx");
     5 create table person as
     6 select
     7     * 
     8 from
     9     connection
    10 to
    11     excel(select * from [sheet1$]);
    12 disconnect from excel;
    13 quit;

    结果为:

    (2)使用 import procedure 进行读取,常使用这个,这个可以使用多个格式的文件。

     1 /* 使用 proc import 导入外部文件 */
     2 proc import out=Mysas.person2 datafile="C:UsershrDesktopperson
    aw.xlsx" dbms=excel replace;
     3     range = "Sheet1$";
     4     getnames = yes;
     5     mixed = no;
     6     scantext = yes;
     7     usedate = yes;
     8     scantime = yes;
     9 run;
    10 
    11 proc print data=person;
    12 run;

    结果为:

  • 相关阅读:
    ubuntu 系统命令
    js模板引擎实例一
    读取页面上所有的checkbox
    使用fileReader实现图片预览
    html5中的audio标签针对IOS系统的兼容处理
    CSS单位
    使用变换属性的旋转和动画属性实现大风车效果
    css动画属性--轮播图效果
    php curl详解
    linux权限详解
  • 原文地址:https://www.cnblogs.com/elkan/p/11126684.html
Copyright © 2011-2022 走看看