Arndata
数据质量依赖数据清洗的工作,数据结果依赖数据算法的效能。

导航

 

 

1、用编程的方法建立指定数据库

LIBNAME 数据库名称 "电脑硬盘路径";

取消指定的数据库

LIBNAME 数据库名称 CLEAR;

如果一个数据库指定多个电脑硬盘文件夹的位置(存储到多个位置),语句格式如下

LIBNAME 数据库名称 ("电脑硬盘路径1" "电脑硬盘路径2");

 

2、从数据库到数据集,有两种方式输入数据建立SAS数据集:

一是将数据排列在变量名单之后;

二是制定一个外部数据文件供读取。

 

第一种方式的语句格式为:

DATA 数据集名称;

/*这个名称可以是事先不存在的,临时命名的一个数据集名称*/

        INPUT 变量名称1 变量名称2 变量名称3 变量名称4 字符变量名称5$;

        CARDS;

d11  d12  ...  d1k

d21  d22  ...  d2k

... ...

dn1  dn2  ...  dnk

/*这种数据每一个记录的方式非常有创意和好玩,注意每行数据不需要加分号( ; )*/

RUN;

第二种方式的语句格式为:

DATA 数据集名称;

        INFILE '电脑硬盘路径';

        INPUT 变量名称1 变量名称2 变量名称3 变量名称4 字符变量名称5$;

RUN;

 

 

3、 数据集复制到新文件和修改

可以用SET语句把一个已有数据集复制或部分复制到一个新数据集(这很必要,因为只在一份数据集上做处理没备份很危险哦~),

同时还可以进行修改。SET的语句格式有两种,有些功能会有重复:

格式一:

DATA 新数据集名称;

        SET 已有数据集名称;

        KEEP 欲保持的变量名称列表;

        DROP 欲丢弃的变量名称列表;

        if 小于某个条件数值 then 保留某些符合条件的数据;

/*IF...THEN... 语句可以在复制的同时对生成的数据集进行修改,取出数据集的某些行构成新的子集*/

RUN;

格式二:

DATA 新数据集名称;

        SET 已有数据集名称 选项;

        if 小于某个条件数值 then 保留某些符合条件的数据;

 

RUN;

 

 

3、拆分数据集

DATA 新数据集名称1 新数据集名称2 ... ;

        SET 已有数据集名称 可略选项;

               select (变量名称);

               when 条件1 OUTPUT 新数据集名称1;

               when 条件2 OUTPUT 新数据集名称2;

               ...;

               otherwise put 变量名称='error';

               end;

RUN;

4、数据集的纵向合并

5、数据集的横向合并

 

 

 

-----------------------------------------------------------------------------------------------------------------

友情协助:

豆瓣统计学小组 www.douban.com/group/stats
posted on 2012-06-02 11:13  Arndata  阅读(1222)  评论(0)    收藏  举报