美文网首页
【SAS编程】第1-2章 SAS基础

【SAS编程】第1-2章 SAS基础

作者: caokai001 | 来源:发表于2021-07-27 01:19 被阅读0次

    参考:

    目前来看,中文的SAS学习资源还不太多,近期可能会陆陆续续更新一些SAS编程的学习教程,记录一下学习过程。

    1. SAS概述

    SAS是一款统计分析软件 。它于1960年由SAS软件研究所创建。从1960年1月1日,SAS用于数据管理,商业智能,预测分析,描述性和规范性分析等。从那时起,许多新的统计程序和组件在软件中进行了介绍。

    SAS是跨平台的,这意味着你可以在任何操作系统Linux或Windows上运行SAS。 SAS是SAS程序员使用了SAS数据集的操作的若干序列进行的数据分析报告。

    2.为什么银行和医药行业喜欢用SAS,而不是Python.

    SAS作为商业软件,有着良好的稳定性。由于不是开源软件,软件中设计的算法或函数可以得到监管部门的检查,所以社会认可度高,但灵活性易用性可能没有开源软件Python,R 等。感兴趣可以点击参考链接

    a

    3.SAS 软件的安装使用

    3.1 SAS Studio在线网页版本

    • 注册SAS cloud
    image-20210727000314675
    • 界面如下:
    image-20210727001544997

    3.2 商业化SAS

    (可以尝试去淘宝买哈~)

    image-20210727001932114

    4.SAS程序结构

    SAS程序结构:下图显示了按给定顺序写入以创建SAS程序的步骤。

    img

    每个SAS程序必须具有所有这些步骤才能完成读取输入数据,分析数据和给出分析输出。 此外,每个步骤结束时的RUN语句都需要完成该步骤的执行。

    4.1 DATA步骤

    此步骤涉及将所需数据集加载到SAS存储器中并识别数据集的变量(也称为列)。 它还捕获记录(也称为观察或主体)。 DATA语句的语法如下。

    • 句法
    DATA data_set_name;     #Name the data set.
    INPUT var1,var2,var3;       #Define the variables in this data set.
    NEW_VAR;            #Create new variables.
    LABEL;                  #Assign labels to variables.
    DATALINES;              #Enter the data.
    RUN;
    

    例子:

    DATA TEMP;
    INPUT ID $ NAME $ SALARY DEPARTMENT $;
    comm = SALARY*0.25;
    LABEL ID = 'Employee ID' comm = 'COMMISION';
    DATALINES;
    1 Rick 623.3 IT
    2 Dan 515.2 Operations
    3 Michelle 611 IT
    4 Ryan 729 HR
    5 Gary 843.25 Finance
    6 Nina 578 IT
    7 Simon 632.8 Operations
    8 Guru 722.5 Finance
    ;
    RUN;
    

    结果:

    image-20210727002719336

    4.2 PROC步骤

    该步骤包括调用的SAS内置程序来分析数据。

    • 句法
    PROC procedure_name options; #The name of the proc.
    RUN;
    
    • 例子

    以下示例显示使用MEANS过程打印数据集中数值变量的平均值。

    PROC MEANS;
    RUN;
    

    4.3 完整的SAS程序

    下面是每个上述步骤的完整代码。

    img

    结果:

    img

    5. SAS语法要求

    5.1 变量名

    • 它最多可以有32个字符。
    • 它不能包含空格。
    • 它必须以字母A到Z(不区分大小写)或下划线(_)开始。
    • 可以包括数字,但不能作为第一个字符。
    • 变量名不区分大小写。
    img

    5.2 数据集

    • 临时数据集:DATA语句之后的一个字表示一个临时数据集的名字。这意味着数据集被在会话结束时删除。
    # Temporary data sets.
    DATA TempData;
    DATA abc;
    DATA newdat;
    
    • 永久数据集:数据集名称可以使用库名称作为前缀,这使它成为永久数据集。 这意味着数据集在会话结束后仍然存在。

      (可以理解为MYLIB文件夹下面,存在newdat文件,里面包含了sas有关数据)

    # Permanent data sets.
    DATA LIBRARY1.DATA1
    DATA MYLIB.newdat;
    

    5.3 SAS语句

    每个编程语言都有自己的语法规则,比如Python中有严格的缩进要求。

    • 语句可以在任何地方开始和结束的任何地方。在最后一行的末尾的分号“;”标志着语句的结束。
    • 多条SAS语句可以在同一行,用分号结束每条语句。
    • SAS关键字不区分大小写。
    • 每个SAS程序必须使用一个运行语句run结束。

    例子:

    image-20210727004317287

    解析:

    • Data Step
    image-20210727004429586
    • Proc Step
    image.png
    • SAS 输出结果
    image-20210727004632902

    5.4 SAS注释

    SAS代码中的注释以两种方式指定。 以下是这两种格式。

    • *信息类型注释

      单行注释
      * This is comment ;
      多行注释
      * This is first line of the comment
      * This is second line of the comment;
      
      
    • / * message * /类型注释

    单行注释
    /* This is comment */
    多行注释
    /* This is first line of the comment
    * This is second line of the comment */
    

    最后

    如果想要更加深入了解SAS程序,存储原理需要理解一下PDV(Program Data Vector)机制。

    Thanks~ 欢迎大家评论交流

    相关文章

      网友评论

          本文标题:【SAS编程】第1-2章 SAS基础

          本文链接:https://www.haomeiwen.com/subject/fsfxmltx.html