SAS进阶《深入解析SAS》之Base SAS基础、读取外部数据到SAS数据集

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. 读取外部文件

DATA 数据集迷彩;
    INFILE 数据文件为准;
    INPUT 变量列表;
RUN;

7. 使用INFILE与的选项DLM=指定分隔符,空格为缺失值;DSD默认为逗号,两个连续的逗号被当做缺失值。

8. SAS先编译LENGTH语句。

9. 列表输入、按列输入、格式化输入。

10. 使用/行指针控制符,强制读入新行到缓冲区://强制依次读入两行,/读入下一行

使用#n行指针控制符,直接在多行的输入缓冲区中移动行指针:#3将行输入指针移动到输入缓冲区的第三行。

11. IMPORT过程导入的导入数据的基本形式如下:

PROC IMPORT
    DATAFILE=文件名|文件引用|DATATABLE=表名
    DBMS=数据源标识符
    OUT=数据集名称;
RUN;

12. SAS/ACCESS接口引擎提供以下方法访问关系型DBMS中的数据:

12.1使用LIBNAME语句将SAS逻辑库引用名定义到DBMS对象,例如schema和数据库。
12.2使用SQL转交(path-through)功能。通过该功能,在SAS会话中可以使用原生SQL语法与数据源交互,这些SQL语句会直接交给数据源处理。

13. SQL (结构化查询语句Structured Query Language)

DBMS(数据库管理系统Database Management System)

14. 使用SQL转交功能的基本形式如下

PROC SQL;
    CONNECT TO 数据库名称<AS 别名><(<数据库连接参数>)>;
    EXECUTE(数据库特定SQL语句)BY数据库名称|别名;
    SELECT 列列表FROM CONNECTION TO 数据库名称|别名 (数据库查询);
    DISCONNECT FROM 数据库名称|别名;
QUIT;

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏JetpropelledSnake

Django学习笔记之Models与ORM操作

956
来自专栏Java帮帮-微信公众号-技术文章全总结

Java面试系列16-jdbc、hibernate、流、线程实现、多态、继承事程序执行顺序等

1 JDBC,Hibernate 分页怎样实现? 方法分别为: 1) Hibernate 的分页: Query query = session.createQ...

2733
来自专栏Jimoer

经历的面试题,先做下部分总结。

1453
来自专栏菩提树下的杨过

[转自JeffreyZhao]在LINQ to SQL中使用Translate方法以及修改查询用SQL

目前LINQ to SQL的资料不多——老赵的意思是,目前能找到的资料都难以摆脱“官方用法”的“阴影”。LINQ to SQL最权威的资料自然是MSDN,但是M...

1925
来自专栏Java Web

Java 7的新特性

前言 看大佬推荐的书单买了一本《Java 8实战》,总觉得在了解Java 8之前,是不是也应该去了解了解一下Java 7的一些特性?所以就自己百度了一些资料来...

3075
来自专栏更流畅、简洁的软件开发方式

其实添加数据也可以这样简单——表单的第一步抽象(针对数据访问层)《怪怪设计论: 抽象无处不在 》有感

更正: 不好意思,昨天晚上思路有点混乱。有几个前提忘记说明了,现在补充一下。 1、缩小范围。按照由简到难的思路,这里先讨论最简单的添加数据的情况。就是单表的添...

2008
来自专栏程序员的SOD蜜

.net访问PostgreSQL数据库发生“找不到函数名”的问题追踪

    PostgreSQL是一个使用广泛的免费开源的数据库,与MySQL比较,它更适合复杂的企业计算任务,而MySQL在互联网领域应用更为广泛,究其原因,可能...

2767
来自专栏腾讯云数据库团队的专栏

PostgreSQL TOAST 技术理解

TOAST 主要用于存储一个大字段的值。在 PG 中,页是数据在文件存储中的基本单位,默认的大小为 8KB。同时,PG 不允许一行数据跨页存储,那么对于超长的行...

7760
来自专栏MasiMaro 的技术博文

OLEDB 枚举数据源

在之前的程序中,可以看到有这样一个功能,弹出一个对话框让用户选择需要连接的数据源,并输入用户名和密码,最后连接;而且在一些数据库管理软件中也提供这种功能——能够...

1071
来自专栏Golang语言社区

Golang下通过syscall调用win32的api

源于golang群中再次提到windows下获取磁盘空间的方法 由于golang的api并非完全跨平台, golang本身并没有直接提供windows下的方式 ...

3155

扫码关注云+社区