Friday, May 27, 2011

Proc Means:Means过程介绍

原文没有提供数据,所以就在网上随便找了个数据进行测试,地址如下:http://www.sasenterpriseminer.com/data/htwt.xls
该数据包含4个变量(性别sex,年龄age,身高height,体重weight),共237个观测。

1 语法:
proc means <option(s)> <statistic-keyword(s)>;
  by <descending> variable(s);
  class variable(s) <option(s)>;
  freq variable;
  id variable(s);
  output <out = dataset> <output-specification(s)>;
  types request(s);
  var variable(s);
  ways list;
  weight variable;
直接运行 proc means过程时,会对所有数值型变量进行操作,得到各变量的非缺失观测数N,均值MEAN,标准差STD DEV,最大值Max和最小值Min。
proc means data =Htwt;
run;
结果:
变量  标签    N     均值      标准偏差    最小值      最大值
-------------------------------------------------------------------
age     age    237  16.4430380  1.8425767  13.9000000  25.0000000
height  height 237  61.3645570  3.9454019  50.5000000  72.0000000
weight  weight 237  101.3080169 19.4406980 50.5000000  171.5000000
-------------------------------------------------------------------
我们还可以增加range(极差) sum(和) var(方差) mean(均值) nmiss(缺失值个数) median(中值)等选项得到其统计量。
proc means data =Htwt range sum var mean nmiss median;
run;
结果略。

2 Class:对变量进行分组操作
proc means data = Htwt range sum var mean nmiss median;
var height;
class sex;
run;
结果:
分析变量:height height

        sex    观测的个数            极差            总和            方差            均值    缺失值个数          中位数
        ---------------------------------------------------------------------------------------------------------------
        f             111      15.5000000         6718.40      11.2781294      60.5261261             0      61.3000000

        m             126      21.5000000         7825.00      18.2900698      62.1031746             0      61.9000000
        ---------------------------------------------------------------------------------------------------------------

3 out:输出结果数据集
proc means data = Htwt range sum var mean nmiss median;
var height;
class sex;
output out=height n = cnt sum = total mean = avg;

run;
proc print data=height;
run;
结果:
Obs    sex    _TYPE_    _FREQ_    cnt     total       avg

              0        237     237    14543.4    61.3646
     f        1        111     111     6718.4    60.5261
     m        1        126     126     7825.0    62.1032
这里的n,sum,mean选项也可以用autoname自动命名。
这里的_TYPE_,当其值为0时,表示对总体进行操作,当其值为1时,表示对各个sex子集进行操作。如果这里的class后有两个变量,例如class sex age,则_type_会有4个值:
0 整个数据集的means操作
1 对age进行子集means操作(以字母为序)
2 对sex进行子集means操作(以字母为序)
3 对sex,age进行交叉子集子集means操作,即sex*age

4 types :对以上所述的_type_进行选择输出。
proc means data = Htwt range sum var mean nmiss median;
var height;
class sex age;
types sex sex*age;
output out=height sum = n = /autoname;
run;
proc print data=height;
run;
只对_type_=2和3的结果进行输出到height数据集中。
如果要对_type_进行二进制层级显示,则要用到charttype选项。
proc means data = Htwt noprint chartype;
var height;
class sex age;
types sex age sex*age;
output out=height sum = n = /autoname;
run;
proc print data=height;
run;

结果:
Obs    sex     age    _TYPE_    _FREQ_      Sum      height_N
          13.9      01          5       287.3         5
          14.0      01          7       398.6         7
          14.1      01          5       289.9         5
61     f       .       10        111      6718.4       111
62     m       .       10        126      7825.0       126
63     f     13.9      11                171.8         3
64     f     14.0      11          3       167.3         3
65     f     14.1      11          3       179.1         3
这里age的_type_为01,sex的_type_为10,两者交叉_type_就为11。

5 T检验:height的均值是否为70
data Htwttt;
set Htwt;
heighttt=height-70;
run;
proc means data = Htwttt n mean stderr t prt maxdec = 1 fw = 5;
var height heighttt;
run;

t :t值
prt:大于t值的概率
maxdec:输出参数的数值的小数点位数
fw:fields width,宽度
结果:
变量        标签        N     均值    标准误差       t 值    Pr > |t|
---------------------------------------------------------------------
height      height    237     61.4         0.3     239.44      <.0001
heighttt              237     -8.6         0.3     -33.70      <.0001
这里P值都小于0.01,故拒绝原假设

0 comments:

 
Copyright 2010 NiuNiu's Warehouse. Powered by Blogger
Blogger Templates created by DeluxeTemplates.net | Blogger Styles | Balance Transfer Credit Cards
Wordpress by Wpthemescreator
Blogger Showcase