zoukankan      html  css  js  c++  java
  • SAS中的宏语言

    一、sas 宏变量

    1) 宏变量属于SAS宏语言,与普通变量的区别是可以独立于DATA步

    2) 可以再SAS程序中除数据行之外的任何地方定义并使用宏变量

    3) %let语句定义宏变量并分配一个值给宏变量(如:%let dsn=3)

    4) 当引用一个宏变量的值,放&号在宏变量前

    5) 使用%str函数围住宏变量的值,使得在这个值内部的分号作为这个文本的部分,而不是%let语句的结束

    6) 使用%PUT语句在LOG窗口显示宏变量的值

    7) SAS/BASE中的自动宏变量,如sysver,systime(给出sas版本或会话开始执行的时间);

    二、宏

    1) %macro语句开始一个宏,同时给出这个宏的名字。如:%macro dsn;

    2) %mend语句结束一个宏,其后给出宏名字。如%mend dsn;

    3) 放一个百分数符号(%)在宏名字前面以调用一个宏,如%dsn

     

    三、宏参数

    1.  被定义在一个%macro语句的宏名字后括号内的宏变量称为宏参数,可以直接给出宏参数的值也可以在调用这个宏时给出这些参数的值
    2.  对参数分配的值只在这个宏执行时有效,而宏变量从用户创建直到SAS会话结束前都存在

    使用宏绘制散点图:

     

    age>50的人绘制age*weight散点图:

     

    四、Sas错误的处理

    1. 句法错误:当程序语句与SAS语言准则不一致时发现的错误,如关键词拼错,少掉分号等。
    2. 语义错误:元素在当前程序语句中的用法是无效时产生的,如DO OVER A
    3. 数据错:当有些数据值不适合用户规定的格式时出现
    4. 运行错:当SAS执行程序时在数值上出现的错误,如用0作为除数,infile引用的文件地址不存在等
    5. 常见错误
    6. 遗漏run语句,在活动窗口的标题栏里显示proc(或datastep runing
    7. 遗漏分号,在log窗口中显示错误,将下一个有效的语句解释为无效的语句
    8. 引号不配对,log信息指明字符串太长或语句被混淆
    9. 无效选项,log指明选项无效或不认识
    10. 出现错误时可以同时按下ctrl+break中断程序
    11. 注意有汉字输入的程序中可能带来输入法兼容性错误,解决方法是重新输入并检查错误
  • 相关阅读:
    T-SQL逻辑查询的各阶段
    linqtosql(GroupBy/Having/Count/Sum/Min/Max/Avg操作符)
    jquery获取select下拉框的值以及change时间绑定
    英汉翻译功能的简单实现
    jQuery zTree默认加载一级几点
    Linq第一篇
    vs2015+win10搭开发环境
    asp.net mvc 中使用静态页
    .net中的异步操作
    (转载)TFS2013安装+配置
  • 原文地址:https://www.cnblogs.com/YangZnufe/p/9028405.html
Copyright © 2011-2022 走看看