SAS进阶《深入解析SAS》之Base SAS基础、读取外部数据到SAS数据集
前言:在学习完《SAS编程与商业案例》后,虽然能够接手公司的基本工作,但是为了更深入的SAS学习,也为了站在更高的一个层次上去掌握和优化公司工作,故而又咬紧牙关加紧学习《深入解析SAS》.就目前的两本书的对比,显而易见的是本书比《SAS编程…》要厚的多,再者内容更新是2015年著,最后是内容详实。没办法,这本书的作者团队过于强大。总之,是一本很好的SAS进阶书。
1. SAS运行模式:SAS窗口模式、非交互模式、批处理模式及交互式行模式。还有对象服务器模式:SAS元数据服务器、工作区服务器、存储过程服务器和OLAP服务器。
2. SAS数据集包含以表的观测(行)和变量(列)为形式存在的数据值,以及用以描述变量类型、长度和创建该数据集时使用的引擎等信息的描述信息。
3. 数据集可分为数据文件和数据视图。
4. 数据文件包含数据和描述信息,在逻辑库中是DATA;而SAS视图不包含数据值,是指向其他数据源的虚数据集,成员类型是VIEW。都包括原生和接口。
5. 字符型变量缺失值是空格,而数字型的变量缺失值是点(.)。
6. 读取外部文件
代码语言:javascript
复制DATA 数据集迷彩;
INFILE 数据文件为准;
INPUT 变量列表;
RUN;
7. 使用INFILE与的选项DLM=指定分隔符,空格为缺失值;DSD默认为逗号,两个连续的逗号被当做缺失值。
8. SAS先编译LENGTH语句。
9. 列表输入、按列输入、格式化输入。
10. 使用/行指针控制符,强制读入新行到缓冲区://强制依次读入两行,/读入下一行
代码语言:javascript
复制使用#n行指针控制符,直接在多行的输入缓冲区中移动行指针:#3将行输入指针移动到输入缓冲区的第三行。
11. IMPORT过程导入的导入数据的基本形式如下:
代码语言:javascript
复制PROC IMPORT
DATAFILE=文件名|文件引用|DATATABLE=表名
DBMS=数据源标识符
OUT=数据集名称;
RUN;
12. SAS/ACCESS接口引擎提供以下方法访问关系型DBMS中的数据:
代码语言:javascript
复制12.1使用LIBNAME语句将SAS逻辑库引用名定义到DBMS对象,例如schema和数据库。
12.2使用SQL转交(path-through)功能。通过该功能,在SAS会话中可以使用原生SQL语法与数据源交互,这些SQL语句会直接交给数据源处理。
13. SQL (结构化查询语句Structured Query Language)
代码语言:javascript
复制DBMS(数据库管理系统Database Management System)
14. 使用SQL转交功能的基本形式如下
代码语言:javascript
复制PROC SQL;
CONNECT TO 数据库名称<AS 别名><(<数据库连接参数>)>;
EXECUTE(数据库特定SQL语句)BY数据库名称|别名;
SELECT 列列表FROM CONNECTION TO 数据库名称|别名 (数据库查询);
DISCONNECT FROM 数据库名称|别名;
QUIT;