SAS进阶《深入分析SAS》之数据汇总和展现

SAS进阶《深入分析SAS》之数据汇总和展现

1. 通过Print过程制作报表

proc print <data=数据集>;
run;
选项:
obs=修改观测序号列标签
noobs不显示观测序列号
id语句在输出中取代观测序列
var选择输出的变量
where语句选择输出的观测

总结如下:
    proc print data=数据集<选项>;
        id 变量1<变量2...>;
        var 变量1<变量2...>;
        where 表达式;
        sum 变量1 <变量2...>;
        where 表达式;
        sum 变量1<变量2...>;
        sumby 变量1<变量2...>;
    run;

2. tabulate

proc tabulate data=Saslib.Sales2;
    title1 'Sales in North America';
    title2 'TOtal Transactions';
/*
*class为分类变量
*/
    class Emp_ID Dept;
    var Sales;
    table Dept*Emp_ID,Sales;
run;

3. 通过GPLOT过程制作图行

分组变量

    axis1 order=(18900 to 18960 by 5);
    axis2 order=(9000 to 20000 by 1000);
        minor=(color=blue height=0.25 number=1); 
    symbol value=# cv=red
            interpol=join ci=blue;
    proc gplot data = Saslib.Sales;
        title f = 'Albany Amt' c = blue h = 3 u = 2 'Yearly Amount in North America';
        footnote j = r 'Optimization Solution Co.Ltd';
        plot Sales*Date=Emp_ID/haxis=axis1 vaxis=axis2;
    run;
    quit;
    goptions reset=all;

4. 增强型HTLM输出

    proc sort data=sashelp.prdsale out=work.prdsale;
        by country;
    run;
    ods html path="C:\Users\LEI\Desktop\data"
             body='prdsalebody.html'
             frame='prdsaleframe.html'
             contents='prdsalecontents.html';

    proc tabulate data=work.prdsale;
        class region division prodtype;
        var actual;keyword all sum;
        keylabel all='Total';
        table (region all)*(division all),
              (prodtype all)*(actual*f=dollar10.) / misstext=[label='Missing']
              box=[label='Region by Division and Type'];
    run;

    ods select ExtremeObs Quantiles Moments;
    proc univariate data=work.prdsale;
        by Country;
        var actual;
    run;

    ods html close;

总结:SAS对数据的汇总和表现两种方式:一种是列表,一种是图行。通过print和tabulate过程制作各种报表和汇总报表;GPLOT过程和GCHART过制作散点图、连线图、气泡图、柱状图等多种图行;ODS输出传送系统,包括如何选择或挑剔输出对象,创建多种格式的输出文件。

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏cs

python统计一下自己的花费

1203
来自专栏YoungGy

ISLR_BootStrapping

起源 概述 置信区间 限制 比较 起源 有的时候,不只是想检定群体的mean,而是想检定群体的median。 这种情况下,CLT就不适用了,需要有新的方法策...

1809
来自专栏nimomeng的自我进阶

探索命名之美(一)

很多新码农在工作中总会被老鸟批评程序命名的陋习,我也被批评过很多次。痛定思过,我决定要研究应该怎么命名,为什么要给函数一个好的命名很难,应该怎么样给函数命名。

1083
来自专栏编程之旅

iOS开发——步数获取

最近半个月的开发工作,重点一直是类似于悦跑圈、咕咚这样的运动产品的功能,所以在处理iOS设备在运动中的表现也是积累了一些经验。

872
来自专栏PPV课数据科学社区

【学习】七天搞定SAS(一):数据的导入、数据结构

标题有些噱头,不过这里的重点是: speak SAS in 7days。也就是说,知识是现成的,我这里只是要学会如何讲这门语言,而不是如何边学SAS边学模型。顺...

2475
来自专栏来自地球男人的部落格

NLTK之朴素贝叶斯分类器

由于学习需要,最近开始接触NLTK,使用最简单的Naive Bayes Classifier,但是写代码过程中各种错误和不顺,现将其记录于此。 之前并不知道分类...

1989
来自专栏ACM算法日常

CodeForces 982F:The Meeting Place Cannot Be Changed(有向图)

Petr is a detective in Braginsk. Somebody stole a huge amount of money from a ba...

691
来自专栏Hongten

Lucene学习总结之一:全文检索的基本原理

根据http://lucene.apache.org/java/docs/index.html定义:

2573
来自专栏C语言及其他语言

[每日一题]定义和调用函数fact(k)计算k的阶乘

在C语言的学习过程中,其实最好的提升能力的方式就是刷题,能够在题海中正真锻炼自己的逻辑思维能力和动手能力,所以先来看看下面这题陶冶陶冶情操。 题目描述 编写程...

5944
来自专栏阮一峰的网络日志

四位计算机的原理及其实现

你是否想过,计算机为什么会加减乘除?或者更直接一点,计算机的原理到底是什么? Waitingforfriday有一篇详细的教程,讲解了如何自己动手,制作一台四位...

3286

扫码关注云+社区