统计211
标题:
利用SAS进行分层随机抽样
[打印本页]
作者:
275932488
时间:
2011-7-1 13:06
标题:
利用SAS进行分层随机抽样
抽样方法(Sampling Method)是按照一定程序,从所研究对象的全体(母体)中抽取一部份(样本)进行调查或观查,并在一定的条件下,运用数理统计的原理和方法,对母体的数量特征进行估计和推断。
抽样方法可分为随机抽样(亦称为机率抽样 Probability Sampling)和非随机抽样(亦称为非机率抽样 Non-Probability Sampling)两大类,这两类的抽样方法都被经常地使用。随机抽样是指按照机率原则,从母体中抽取一定数目的单位元作为样本进行观察,随机抽样使母体中每个单位都有一定的机率被选入样本,从而使根据样本所做出的结论对母体具有充分的代表性。非随机抽样则是以方便为出发点或根据研究者主观的判断来抽取样本。非随机抽样主要依赖研究者个人的经验和判断,它无法估计和控制抽样误差(sampling error),亦无法用样本的量化数据来推断母体。
在所有抽样方法中,属分层抽样(Stratified Sampling)法所应用的范围最广与最多。它是先将母体所有单位按某些重要因素进行分类(层),然后在各类(层)中采用简单随机抽样(simple random sampling)或系统抽样(system sampling)方式抽取样本单位。分层抽样比简单随机抽样和系统抽样更为精确,能够通过对较少的抽样单位的调查,得到比较准确的推断结果,特别是当母体较大、内部结构复杂时,分层抽样常能取得令人满意的效果。同时,分层抽样在对母体推断的同时,还能获得对每层的推论。
分层抽样的方式,一般有等比例抽样与非等比例抽样。等比例抽样,要求各类样本单位数的分配比例与母体单位在各类的分配比例一致。等比例抽样简便易行且分配比较合理,在实际工作中应用较广。非等比例抽样,不受上述条件限制,即有的层可多抽些样本单位,有的层也可少抽些样本单位。非等比例抽样大多适用于各层的单位数相差悬殊,或层内变异数相差较大的情形。在这种情况下,如按等比例抽样,可能在母体单位数少的层中抽取样本单位数过少,代表性不足,则可适当放宽多抽;同样,层内变异触较大的,也可多抽些样本单位。但是在实际运作前要准确了解各层标志变异程度大小是比较困难的。
可将本文中母体视为一个庞大的数据库,而所做的抽样工作即是在这数据库中抽取具有代表性的样本点。
在设计抽样方法的过程中,最具有关键性的角色即是选择何种抽样方法。抽样设计的方法有很多种,一般较常用的就属分层随机抽样法。另方面,在统计推论时,即是由样本数据对母体进行推估,如何找出抽样比亦是一个相当重要的课题。
下面介绍如何运用SAS宏指令及一些函数来建构抽样程序与决定系数的使用方法。
SAS Macro程序
A. 仿真产生1000笔数据
DATA _NULL_;
RETAIN SEED 83624;
DO I=1 TO 1000;
SERIAL=I; /* SERIAL-连续号(KEY)*/
LAYER=CEIL(8*RANUNI(SEED)); /* LAYER -层别 */
VOLUME=CEIL(100*RANUNI(SEED)); /* VOLUME-数量值 */
FILE INMAST;
PUT @1 SERIAL Z4. @8 LAYER 1. @11 VOLUME 3.;
END;
B. 读入字段素描档=>产生SAS字段格式档
DATA _NULL_;
INFILE INFIELD;
INPUT FIELD $7-12 F 4-5 S 13-17 TYPE $6;
IF TYPE="9" THEN KK=FIELD||""||COMPRESS(F)||".";
ELSE KK=FIELD||" contentquot;||COMPRESS(F)||".";
FILE SASFORM;
PUT KK 1-20;
【字段素描档(INFIELD)】【字段格式档(SASFORM)】
----+----+----+-
00104XSERIAL0001 SERIAL $4.
00203XFILLER0005 FILLER $3.
003019LAYER 0008 LAYER 1.
00402XFILLER0009 FILLER $2.
005039VOLUME0011 VOLUME 3.
00607XFILLER0014 FILLER $7.
C. 利用字段格式文件=>读入仿真产生的资料
DATA WKMAST(DROP=FILLER);
INFILE INMAST;
INPUT %INCLUDE SASFORM;;
※利用%INCLUDE指令,可将资料依原先建好的SASFORM的格式读入。
D. 各层抽出比率控制卡
DATA SAMPLE;
INPUT LAYER PERCENT @@;
CARDS;
1 7 2 7 3 7 4 7 5 7 6 7 7 7 8 7
;
※各层别抽出样本的比率可由此卡加以控制,各变量项代表意义-LAYER(层别)、PERCENT(百分比;%)。
E. 分层比率随机抽样宏
DATA SAMPS(KEEP=&LAYER SAMPS RAN);
SET NOUT ; RETAIN NSAMP 1 ;
ARRAY RA{500} RAN1-RAN500 ; /*存放已抽出之随机变量*/
IF MARK=1 THEN /* 全查层抽样 */
DO J=1 TO SAMPS; RAN=J ; OUTPUT ; END ;
ELSE DO ; /* 抽查层抽样(随机抽样) */
DO UNTIL(NSAMP=SAMPS+1 ] NSAMP=_FREQ_+1);
RAN=CEIL(_FREQ_*RANUNI(1994));
1 THEN
DO J=1 TO NSAMP-1 ;
IF RAN=RA{J} THEN GOTO NEXT; /*判断所抽随机数是否重复*/
END ;
OUTPUT ; RA{NSAMP}=RAN ; NSAMP=NSAMP+1 ;
NEXT:END;
NSAMP=1 ;
END ;
※利用宏传呼参数%TEST(WKMAST,LAYER,SERIAL)的呼叫,可以在不必修改变量项目及避免程序重复撰写的情形下,完成样本抽取的动作。以上为决定全查层或抽查层而采行不同抽取动作之程序部分。
传呼参数说明:WKMAST-母体资料集;LAYER-层别(1~8);SERIAL(序号;样本编号)
欢迎光临 统计211 (http://www.tj211.com/)
Powered by Discuz! X3.2