SAS学习笔记之《SAS编程与数据挖掘商业案例》(2)数据获取与数据集操作

1. SET/SET效率高,建立的主表和建表索引的查询表一般不排序,

2. BY语句,DATA步中,BY语句规定分组变量,用于控制SET,MERGE,UPDATE或MODIFY语句。

BY<DESCENDING>variable-1
<...<DESCENDING>variable-n><NOTSORTED><GROUPFORMAT>;
其中:
Variable为分类、排序或索引的变量;
GROUPFORMAT为用格式化值分组;
NOTSORTED为未排序。

3. MERGE 多表的横向合并,关系为一对一,一对多,多对一。而多对多需用SQL。

    应用:1)根据某些需求条件更新特定变量2)对主数据的某些变量做历史累加

UPDATE语句后面只能跟两个数据集,最靠近UPDATE语句的是主数据集,随后是更新数据集。UPDATE在横向合并两个数据集时和MERGE相似,都是用更新数据集修改主数据集。

区别:MERGE,对更新数据集缺失值的处理,MERGE语句是不顾后果的,它会统统用远离MERGE语句数据集的数据覆盖靠近MERGE语句数据集的数据,即便是缺失值也会覆盖。

但是,有时候商业需求要求在更新数据集数据缺失的情况下用主数据集数据替代,这时候就是UPDATE语句、在使用SAS做数据仓库的ETL开发时就是如此。

MODIFY:每次更新非常庞大的数据集需要定期更新,但是每次更新对象都是动态的,可以比MERGE/UPDATE减少内存消耗。

MODIFY的四种数据集的访问机制:匹配访问、索引访问、观测访问、观测序列号访问、顺序访问。

@和@@的应用:@ 表示执行下一个操作时,指针移到下一个记录。@@表示执行下一个操作,指针保持在当前记录。

proc:过程步的开始是procedure的缩写。

4.输出观测的方法:4.1没有任何输出语句–输出PDV;4.2OUTPUT;REPLACE;REMOVE

5.put语句:可以输出变量信息到指定地点,包括:输出到SAS系统的日志窗口,输出到FILE语句规划的外部文件,输出到SAS系统的OUTPUT窗口。

        SAS系统使用PUT语句输出时,可以用指针控制,注意列指针控制的@要放在变量之前,行固定说明符的@要放在变量之后。
PUT应用:输出结果到LOG窗口,调试程序运行过程中变量产生的中间值。输出结果到外部文件。

6.@和@@应用/单尾符和双尾符

一般单尾符应用在PUT,双尾符应用在INPUT。
单尾符:一个数据行用多个PUT语句输出数据,或多个INPUT语句输入数据。
双尾符:一个输入数据行含有多个观测的值,用INPUT语句读入,或者把多个观测输出到一个数据行,用PUT。

7.FIEL语句

FILE语句用于规定当前的输出文件,并且该文件一定是一个不同于SAS文件的外部文件。且与PUT配合使用。
INFILE语句 INFILE file-specification<options><host-options>;独有常用项:DSD dlm='',FRISTOBS,LENGTH,MISSOVER,_INFILE_

SAS学习笔记之《SAS编程与数据挖掘商业案例》(2)数据获取与数据集操作的更多相关文章

  1. 《SAS编程和数据挖掘商业案例》第14部分学习笔记

    继续<SAS编程与数据挖掘商业案例>学习笔记系列,本次重点:经常使用全程语句 所谓全程语句.是指能够用在不论什么地方的sas语句,既能够用在data数据步语句里面,也能够用在proc过程步 ...

  2. 《SAS编程和数据挖掘商业案例》学习笔记# 19

    继续<SAS编程与数据挖掘商业案例>学习笔记,本文側重数据处理实践.包含:HASH对象.自己定义format.以及功能强大的正則表達式 一:HASH对象 Hash对象又称散列表,是依据关键 ...

  3. SAS学习笔记之《SAS编程与数据挖掘商业案例》(5)SAS宏语言、SQL过程

    SAS学习笔记之<SAS编程与数据挖掘商业案例>(5)SAS宏语言.SQL过程 1. 一个SAS程序可能包含一个或几个语言成分: DATA步或PROC步 全程语句 SAS组件语言(SCL) ...

  4. SAS学习笔记之《SAS编程与数据挖掘商业案例》(4)DATA步循环与控制、常用全程语句、输出控制

    SAS学习笔记之<SAS编程与数据挖掘商业案例>(4)DATA步循环与控制.常用全程语句.输出控制 1. 各种循环与控制 DO组 创建一个执行语句块 DO循环 根据下标变量重复执行DO和E ...

  5. SAS学习笔记之《SAS编程与数据挖掘商业案例》(3)变量操作、观测值操作、SAS数据集管理

    SAS学习笔记之<SAS编程与数据挖掘商业案例>(3)变量操作.观测值操作.SAS数据集管理 1. SAS变量操作的常用语句 ASSIGNMENT 创建或修改变量 SUM 累加变量或表达式 ...

  6. SAS学习笔记之《SAS编程与数据挖掘商业案例》(1)系统简介和编程基础

    SAS学习笔记之<SAS编程与数据挖掘商业案例>(1)系统简介和编程基础 1. SAS系统简介 1.1 SAS是先编译后执行的语言,data步标志着编译的开始. 数据指针:当前内存缓存区, ...

  7. 《SAS编程与数据挖掘商业案例》学习笔记之十六

    <SAS编程与数据挖掘商业案例>学习笔记,本次重点:sas宏变量 内容包含:宏变量.宏函数.宏參数.通配函数.字符函数.计算函数.引用函数.宏语句.宏应用 1.宏触发器: %name-to ...

  8. 《SAS编程与数据挖掘商业案例》学习笔记之十五

    继续<SAS编程与数据挖掘商业案例>读书笔记,本次重点:输出控制 主要内容包含:log窗体输出控制.output窗体输出控制.ods输出控制 1.log窗体输出控制 将日志输出到外部文件 ...

  9. 《SAS编程与数据挖掘商业案例》学习笔记之十八

    接着曾经的<SAS编程与数据挖掘商业案例>,之前全是sas的基础知识,如今開始进入数据挖掘方面笔记,本文主要介绍数据挖掘基本流程以及应用方向,并以logistic回归为例说明. 一:数据挖 ...

随机推荐

  1. HDU 2604 矩阵快速幂

    题目大意 给定长度为l的只有f,m两种字母 的序列,问不出现fff,fmf的序列个数有多少个 每次的下一个状态都与前一次状态的后两个字母有关 比如我令mm : 0 , mf : 1 , fm : 2 ...

  2. 在JQuery中$(document.body)和这个$("body") 这两的区别在哪里?

    两种写法代表的是同一个对象 $("body") 是一个选择器,jQuery 会从 DOM 顶端开始搜索,直到找到标签为 body 的元素. 而 $(document.body) 中 ...

  3. PatentTips - Hamming distance comparison

    BACKGROUND INFORMATION In a typical data processing environment, data may be transmitted in multiple ...

  4. T1082 线段树练习3 codevs

    http://codevs.cn/problem/1082/ 题目描述 Description 给你N个数,有两种操作: 1:给区间[a,b]的所有数增加X 2:询问区间[a,b]的数的和. 输入描述 ...

  5. android 程序猿跳槽须要注意哪些?

    我是一个工作3年多的android开发,因为公司和个人发展原因.打算跳槽! 这次跳槽又给我好好的上了一课!所以我自己反思总结了一下.然后整理出一下几点 程序猿打算跳槽的时候须要注意的几点. 一 先想好 ...

  6. 【Cocos2dx游戏开发】CCNotificationCenter传递消息和数据

    在开发游戏的时候我们经常需要在层与层之间.场景与场景之间传递数据和消息,Cocos2dx框架应用观察者模式为我们封装了一个CCNotificationCenter类,也叫消息通知中心,它也是一个单例类 ...

  7. 从一个input点击引起的思考

    一个input或者select标签都是有属于自己的disabled属性的,这个属性很少被使用,但是我们在项目实际开发的过程中也会遇到,比如我选择之后就让他置灰不可以变动了,那么久可利用js动态设置.对 ...

  8. ViewPager中View的复用

    代码例如以下: public class MyViewPagerAdapter extends PagerAdapter { //显示的数据 private List<DataBean> ...

  9. inline-block元素因基线对齐而造成上浮的问题

    假设我需要实现将三个块级元素并排对齐的如下效果: 代码如下: <!DOCTYPE html> <html lang="en-US"> <head> ...

  10. 斯坦福《机器学习》Lesson8感想-------1、SMO

    从上一篇文章可知支持向量(supervector)就是指的离分隔超平面近期的那些点.整个SVM最须要的步骤是训练分类器.得到alpha,从而得到整个用于数据分类的分隔超平面.支持向量机(super v ...