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

简介: SAS学习笔记之《SAS编程与数据挖掘商业案例》(3)变量操作、观测值操作、SAS数据集管理1. SAS变量操作的常用语句ASSIGNMENT 创建或修改变量SUM 累加变量或表达式KEEP 规定在数据集中保留的变量DROP 规定在数据集中删除的变量ARRAY 定义一个数组RENAME

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

1. SAS变量操作的常用语句

ASSIGNMENT  创建或修改变量
SUM         累加变量或表达式
KEEP        规定在数据集中保留的变量
DROP        规定在数据集中删除的变量
ARRAY       定义一个数组
RENAME      重命名数据集变量
LENGTH      定义变量长度
LABEL       定义变量标签

2. 连接符:||

compress:消除空格
RETAIN应用:一是需要对某一个变量值进行累加、比较等操作。二是需要保留之前的某一满足条件的变量值到指定的观测对应的变量。

3.维度函数:MID() DIM(MULT)等加于DIM(MULT,1)

LABEL:标签

4. SAS观测值操作

OUTPUT 输出当前在PDV中的观测,继续无条件自行下面的语句。
IF      如果满足条件,继续执行后面语句;否则,返回DATA步开头。
WHERE   观测进入PDV之前进行条件判断。
REPLACE 更新观测,但仅在MODIFY语句中适用。
REMOVE  删除观测,但仅在MODIFY语句中适用。
DELETE  如果满足条件,返回DATA步开头;否则继续执行后面语句。
STOP    停止输出当前PDV中的观测,并退出DATA步。

WHERE语句在PDV之前执行。

5. 数据集管理主要包括数据集纵向拼接、转置、排序、比较、复制、重命名、删除等操作。通过SAS的过程步完成,常用过程步。

APPEND  把来自SAS数据集的所以数据添加到另外一个SAS数据集的后面。
SORT    对原有SAS数据集安装一个或多个变量进行排序。
TRANSPOSE   对原有的SAS数据集进行行列转置
CONTENTS    输出SAS逻辑库成员的描述信息
DATASETS    管理SAS逻辑库成员,可以完成对SAS逻辑库中的所有成员进行输出列表、复制、换名、添加和删除等操作。
实践:在PROC SORT中用了NODUPKEY后最好一同使用OUT,OUT可以保证原来的数据集不变,把NODUPKEY后的产生的观测输出到新的数据集中。(万一程序开发有误,有保障) 
带OUT=选项的删除重复BY值
        data a;
            input x y @@;
            cards;
            1 20 1 10 1 30 2 40 2 50
            ;
        run;
        proc sort data=a nodupkey out=b;by x;run;

6. 行列转置实践

DATA比PROC效率高
对比:
6.1 列转置为行
    PROC步:
        proc transpose data=chapt6.fishdata
            out=charpt6.fishlength(rename=(coll=measurement));
            var length1-length4;
            by location date;
        run;
    DATA步:
        data chapt6.fishlength2;
            set chapt6.fishdata(keep=location data length1-length4);
            array tr[1:4] length1-length4;
            do i=1 to 4;
            measurement=tr(i);
            output;
            end;
            keep location date measurement;
        run;
6.2 行转置列
    PROC步:
        proc transpose data=chapt6.fishlength
            out=chapt6.fishdata2;
            var measurement;
            by location date;
            id _name_;
        run;
    DATA步:
    data chapt6.fishlength(keep=location date measurement);
            do i=1 to 4;
            set chapter6.fishlength(keep=location date measurement);
            array tr[1:4] length1-length4;
            tr(i)=measurement;
            end;
            keep location date length1-length4;
        run;
目录
相关文章
|
4月前
|
机器学习/深度学习 数据挖掘 Python
【数据挖掘】分类器模型性能评估讲解及iris数据集评估实战(超详细 附源码)
【数据挖掘】分类器模型性能评估讲解及iris数据集评估实战(超详细 附源码)
48 0
|
4月前
|
机器学习/深度学习 算法 数据挖掘
【数据挖掘】SVM原理详解及对iris数据集分类实战(超详细 附源码)
【数据挖掘】SVM原理详解及对iris数据集分类实战(超详细 附源码)
95 1
|
4月前
|
机器学习/深度学习 人工智能 数据挖掘
【Python数据挖掘】数据挖掘简介及Jupyter notebook操作介绍(图文解释 超详细)
【Python数据挖掘】数据挖掘简介及Jupyter notebook操作介绍(图文解释 超详细)
63 0
|
4月前
|
数据可视化 数据挖掘 Python
Python数据挖掘实用案例——自动售货机销售数据分析与应用(二)
Python数据挖掘实用案例——自动售货机销售数据分析与应用(二)
347 0
|
2月前
|
机器学习/深度学习 数据挖掘 定位技术
预测未来:Python 数据挖掘案例
数据挖掘是从大量数据中提取有用信息的过程。通过应用数据挖掘技术,我们可以发现数据中的模式、关系和趋势,从而做出预测和决策。在 Python 中,有许多强大的数据挖掘库和工具可供使用。本文将介绍一个使用 Python 进行数据挖掘以预测未来的案例。
|
3月前
|
算法 搜索推荐 数据挖掘
通过案例理解数据挖掘
通过案例理解数据挖掘
36 2
|
4月前
|
算法 数据挖掘
【数据挖掘】朴素贝叶斯分类讲解及对iris数据集分类实战(超详细 附源码)
【数据挖掘】朴素贝叶斯分类讲解及对iris数据集分类实战(超详细 附源码)
85 0
|
4月前
|
机器学习/深度学习 存储 算法
【数据挖掘】KNN算法详解及对iris数据集分类实战(超详细 附源码)
【数据挖掘】KNN算法详解及对iris数据集分类实战(超详细 附源码)
73 0
【数据挖掘】KNN算法详解及对iris数据集分类实战(超详细 附源码)
|
4月前
|
算法 数据挖掘 Python
【数据挖掘】决策树中C4.5与CART算法讲解及决策树应用iris数据集实战(图文解释 附源码)
【数据挖掘】决策树中C4.5与CART算法讲解及决策树应用iris数据集实战(图文解释 附源码)
48 0
|
4月前
|
机器学习/深度学习 安全 数据挖掘
Python数据挖掘实用案例——自动售货机销售数据分析与应用(三)
Python数据挖掘实用案例——自动售货机销售数据分析与应用(三)
169 0