EDA(探索性数据分析)最常用的过程步之一就是PROC UNIVARIATE。

首先先看一个最简单的PROC UNIVARIATE程序:

PROC UNIVARIATE DATA=SASHELP.FISH;
WHERE SPECIES='Bream';
VAR HEIGHT;
RUN;

上述代码得到的结果有:矩、位置和可变形的基本测度、位置检验、分位数、极值观测。具体如下:

解读:首先看第一张表——矩,其中N=35代表该进入分析变量有35条观测,偏度约0.2稍微有点负偏态(右偏),变异系数12(不大也不小,无法得出结论),峰度系数-0.6(低峰后尾);

第二张表:位置和变异性的基本测度,其中位置的统计量有均值(15.1),中位数(14.9)还是比较接近,所以近似对称分布。变异性即数据的差异性程度(标准差越大差异越大。)

PROC UNIVARIATE DATA=SASHELP.FISH;
WHERE SPECIES='Bream';
VAR HEIGHT;
HISTOGRAM ;
RUN;

若加了一个HISTOGRAM则增加了一个直方图,如下:

如加一个NORMAL选项则在直方图上面加了一根拟合后的正态分布图,并且还增加了拟合正太分布的参数估计、拟合优度、分位数,这里的括号中的意思可理解为均值(MU)和标准差(SIGMA)的值为原始数据本身的均值和标准差;

PROC UNIVARIATE DATA=SASHELP.FISH;
WHERE SPECIES='Bream';
VAR HEIGHT;
HISTOGRAM /NORMAL(MU=EST SIGMA=EST);
RUN;

PROC UNIVARIATE DATA=SASHELP.FISH;
WHERE SPECIES='Bream';
VAR HEIGHT;
HISTOGRAM /NORMAL(MU=EST SIGMA=EST) KERNEL;
RUN;

加了一个KERNEL则在直方图中加了一根实际数据核分布的密度曲线,如下图:

PROC UNIVARIATE DATA=SASHELP.FISH PLOT;
WHERE SPECIES='Bream';
VAR HEIGHT;
HISTOGRAM /NORMAL(MU=EST SIGMA=EST) KERNEL;
RUN;

上述加了一个plot选项,在结果中增加了分析变量数据的分布图、盒形图、以及概率图,如下:

由概率图看出,散点分布的直线上下,还算是比较重合,所以该数据近似服从正态分布的。

暂时就会这么多了。。以后再补。

PROC UNIVARIATE过程的更多相关文章

  1. 使用PROC TRANSPOSE过程步对数据集进行转置时如何保持日期变量的时间顺序

    有一个数据集如下所示: 如果直接进行转置. SAS程序: proc transpose data=test out=outx1 (drop=_name_); by id; var amount; id ...

  2. PROC UNIVARIATE 简单示例

    OPTIONS NOCENTER LS=MAX PS=MAX USER=SASHELP; PROC UNIVARIATE DATA=FISH;WHERE SPECIES='Bream';VAR HEI ...

  3. SAS数据步与过程步,数据步语句

    SAS数据步与过程步,数据步语句http://www.biostatistic.net/thread-2045-1-1.html  ---转载---原文作者:biostar(出处: 生物统计家园) 数 ...

  4. SAS学习经验总结分享:篇五-过程步的应用

    之前已经介绍过BASE SAS分为数据步和过程步,过程步是对数据步生成的数据集进行分析和处理,并挖掘数据信息,写出分析报告做总结评价. (本文为原创,禁止复制或转载,转载务必标明出处:http://w ...

  5. SAS 画折线图PROC GPLOT

    虽然最后做成PPT里的图表会被要求用EXCEL画,但当我们只是在分析的过程中,想看看数据的走势,直接在SAS里画会比EXCEL画便捷的多. 修改起来也会更加的简单,,不用不断的修改程序然后刷新EXCE ...

  6. SAS实验室之PROC TRANSPOSE

    首先,抛开SAS,回忆我们在数学课本上学习的转置是什么概念,转置如下图: 以上就是数学中的转置. 那么在SAS里该如何转置呢? 先看语法格式: PROC TRANSPOSE <DATA=inpu ...

  7. Intel汇编语言程序设计学习-第五章 过程-下

    5.3.3  库测试程序 测试程序#1:整数I/O 该测试程序把输出文本的颜色改为蓝底黄字,然后以十六进制数显示七个数组的内容,最后提示用户输入一个有符号整数,再分别以十进制.十六进制和二进制格式重复 ...

  8. [PROC FREQ] 单组率置信区间的计算

    本文链接:https://www.cnblogs.com/snoopy1866/p/15674999.html 利用PROC FREQ过程中的binomial语句可以很方便地计算单组率置信区间,SAS ...

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

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

随机推荐

  1. xmlns=""

    用dom4j把两个手上的element撮合到一起,dom4j就会在被加的元素上写上xmlns="",当时我也没在意,后来用户要求去掉,查了一下还不是那么容易,原来xml本身对nam ...

  2. java数组的声明由几种方式

    数组的声明由几种方式: 1,String []a = new String[length];再赋值 a[0]=?;....... 2,new完就直接初始化: String []a = new Stri ...

  3. Linux下mysql数据库的命令

    连接数据库命令:mysql -u 用户名 -p 密码 要求你输入要连接数据库的用户名和密码.用户名默认root密码不方便输入时,可以只输入:mysql -u 用户名 -p 然后回车,此时提示你输入密码 ...

  4. 基于MDK编程STM32程序无法使用,硬件仿真在汇编窗口看到停留在“0x0800XXXX BEAB BKPT 0xAB //进入调试模式”

    为方便工作上做测试,移植FreeRTOS到STM32F103xx,先做简单的UART1 printf. 工程编译通过,运行逻辑也确认可行,可就是无法正常打印消息.对比了网上的移植工程也是一致,硬件仿真 ...

  5. iOS开发——modifying the autolayout engine from a background thread

    很多时候,我们需要用到多线程的东西,比如红外线检测是否有人经过.这种情况需要搞个子线程在后台不断的检测,这个线程可能是第三方提供的,你调用它给的方法,然后显示提示框的时候,问题就来了. 提示信息:Th ...

  6. 谈谈Session会话和Cookie

    Session Session在我们的网络应用中就是一种客户端与服务器端保持状态的解决方案 Session对象,就是客户端浏览器与服务器之间建立的互动信息状态.每一个不同的用户连接将得到不同的Sess ...

  7. 环信 之 iOS 客户端集成一:导入库

    1. 导入 我采用cocoapod的方式,在project同级目录下创建Podfile,Podfile内容如下: platform :ios, '7.0' pod 'EaseMobSDKFull', ...

  8. Spring 之 示例(Java之负基础实战)

    接 Spring 之 配置 里面的代码. 现在要进行Controller的开发. 1.引用类 import org.springframework.web.servlet.mvc.Controller ...

  9. java中Array/List/Map/Object与Json互相转换详解(转载)

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于JavaScript Programming Langu ...

  10. js原生设计模式——2面向对象编程之继承—多继承

    1.单对象克隆 <!DOCTYPE html><html lang="en"><head>    <meta charset=" ...