zoukankan      html  css  js  c++  java
  • 【SAS BASE】通过DATA步导入数据注意事项(适用于text、ASCII、sequential、flat文件)

    • 从内部导入)Datelines一定是DATA Step的最后一个语句,除非SAS遇到分号,所有datelines后面的语句都被看作是数据:
    1 DATA A;
    2   INPUT a $ b $ c;
    3   datalines;
    4    adams F 12 
    5    Lincon M 16
    6 ;
    7 RUN;
    • 从外部导入)Infile语句紧跟在DATA语句后面,但一定要在INPUT语句前面:
    1 DATA B;
    2     INFILE 'C:MYRAWDATAB.dat';
    3     INPUT a $ b$ c;
    4 RUN;
    • LRECL=option:处理Long records 的办法,record length指的是每一行数据的包括空格在内的字符数,SAS假定是256,若数据较长,则SAS可能读不完所有的数据:
    1 INFILE 'C:DATA.dat' LRECL=2000;
    • @n:column pointer命令SAS移动到第n列,注意在INPUT语句中一定要放在变量名之前
    1 INPUT a $ 1-22 b $ Year @40 acre comma9.;
    2                               /*表示在读入acre数据之前,SAS移动到第40列*/               
    • @'character':即跟在某个特定的单词或字母(character)后面
    1 INPUT @ 'bread:' Dogbreed $;
    • colunm modifier:命令SAS遇到空格就停下来
    1 INPUT @'bread:' Dogbreed $;/*输出:Rottweil(默认长度为8)*/
    2 
    3 INPUT @'bread:' Dogbreed $20.;/*输出:Rottweil vet bill*/
    4 
    5 INPUT @'bread:' Dogbreed :$20.;/*输出:Rottweil(遇到空格停止)*/
    • 读入数据小工具(/,#n,@@,@):

      /:令SAS跳到SAS的下一行读入;
      #n:令SAS跳到SAS的第n行读入;
      @@:若数据中出现了一行有多个观测值时,应在INPUT语句最后加上@@;
      @: 命令SAS停留在这里,用户可通过IF语句判断这一行到底该不该读入,若需要,则SAS才会继续读入该行的其他变量,若不需要,后面的INPUT语句就不会执行:

    1 INPUT TYPE $ @;
    2 IF TYPE ='surface' THEN DELETE;
    3 INPUT NAME $ 9-27 C D;
    • MISSOVER:命令SAS如果该行数据读完了,不要读下一行数据,剩下的未读变量全部赋值为缺失值;
      TRUNCOVER:适用于采用column或formatted input 方法,且某些数据行比其他行要短的情形。它命令SAS仅当遇到数据行的末端或者在format or column输入指定的最后一列时才停止输入。
      /*MISSOVER与TRUNCOVER的相似与区别*/
      若数据在读入该变量之前就终止,则MISSOVER与TRUNCOVER都会赋予该变量缺失值;
      若数据在读入该变量中间就终止(比如定义3-12,到第六列就完了),则MISSOVER会赋予该变量缺失值;TRUNCOVER则会有多少分配多少
    • DLM:指定读入文件的分隔符。注意,若分隔符是tab,则需要用DLM='09'X(IBM中为'05'X);若分隔符为字符串,则用DLMSTR=option选项。
    • DSD option:功能    
    1 默认分隔符是逗号,若不是,用DLM=更改;
    2 数据中的引号不读入;
    3 引号内的分隔符不被读入;
    4 连续中两个连续的分隔符看作是缺失值。
  • 相关阅读:
    fastDFS同步问题讨论
    Android开发(26)--补间动画(Tween)的实现
    android布局
    Linux特殊权限:SUID、SGID、SBIT
    如何使用ssh-keygen生成key
    Linux中环境变量到底写在哪个文件中?解析login shell 和 no-login shell
    使用ssh无密码登录
    github中的ssh配置
    PHP中的一个很好用的文件上传类
    [置顶] js模板方法的思路及实现
  • 原文地址:https://www.cnblogs.com/chenyn68/p/3865096.html
Copyright © 2011-2022 走看看