高 輝 胡良平△ 李長平 郭 晉
實驗設計是統(tǒng)計學中的重要內(nèi)容,是整個科研工作的行動指南。在實驗前制定一個科學、完善、合理、可行的設計方案,可保證整個實驗過程有章可循。完整的實驗設計方案,涉及實驗設計的“三要素、四原則和設計類型”的全面考慮和妥善安排。然而,由于不同設計類型的特點各異,常規(guī)的隨機數(shù)字表、隨機排列表應用起來不是十分方便。本文借助SAS 9.2簡體中文版軟件的plan、optex過程,實現(xiàn)了五種含區(qū)組因素設計類型的設計方案。此外,plan過程和optex過程的直接輸出結果只是因素水平值的交叉組合,不易被用戶所理解。本文以tabulate過程對隨機化結果進行調(diào)整,使其以能體現(xiàn)設計類型特點的形式展現(xiàn)出來,程序簡潔,方便科研人員修改使用;結果清晰明了,方便實驗者記錄實驗數(shù)據(jù)。
隨機區(qū)組設計是配對設計的擴展,它首先將受試對象按可能影響實驗結果的屬性分組,使屬性相同或接近的分在同一組內(nèi),形成區(qū)組,然后將各區(qū)組內(nèi)的受試對象隨機分配至各處理組〔1〕。
【例1】選擇4組受試對象,共16個,各組內(nèi)受試對象條件相近。分別給予4種不同的處理,擬采用隨機區(qū)組設計安排實驗,請給出具體的設計方案。
對受試對象進行編號,第1組編號范圍為1~4,第2組編號范圍為5~8,依此類推。
SAS程序如下:
proc plan seed=10000;
factors group=4 ordered treat=4;
output out=a group cvals=('第1組 ''第2組 ''第3組 ''第4組')
treat cvals=('處理1''處理2''處理3''處理4');
run;
data b;set a;subject=_n_;run;
ods html style=analysis;
proc tabulate format=2.0;class group treat;var subject;
table group=",subject='受試對象編號'*
treat=''*sum=''/box=[label='區(qū)組 '];
run;
ods html close;
輸出結果見表1。表格內(nèi)數(shù)字為受試對象的編號。如數(shù)字“3”所在的行標識為第1組,列標識為處理1,表示區(qū)組1中的3號受試對象接受處理1的處理??蒲腥藛T可在數(shù)字后記錄受試對象的觀測結果。
表1 例1的隨機化設計方案
拉丁方設計是在隨機區(qū)組設計的基礎上發(fā)展的,適用于實驗中安排一個處理因素和兩個區(qū)組因素且各因素水平數(shù)相等的研究〔2〕。
【例2】擬采用拉丁方設計考察4個不同的受試對象在4個不同的時間接受4種不同方法的檢測,請給出具體的設計方案。
對4種檢測方法進行編號,范圍為1~4。
SAS程序如下:
proc plan seed=10000;
factors subject=4 ordered period=4 ordered;
treatments test=4 cyclic;
output out=a subject cvals=('受試者1''受試者2''受試者3''受試者4')random period cvals=('時間1''時間2''時間3''時間4')
random test nvals=(1 2 3 4)random;
run;
ods html style=analysis;
proc tabulate format=2.0;
class subject period;var test;
table subject='',test='檢測方法 '*period=''*sum=''/box=[label='受試者編號 '];
run;
ods html close;
輸出結果見表2。表格內(nèi)數(shù)字為檢測方法的編號。
表2 例2的隨機化設計方案
交叉實驗設計是按事先設計好的處理次序,在實驗對象上按各個時期逐一依次實施各項處理,以比較這些處理的作用。2×2交叉設計指的是兩個時期、兩個處理的交叉設計〔3〕。
【例3】擬采用2×2交叉設計來考察兩種藥物的療效,選擇8個受試對象參與實驗,請給出具體的設計方案。
對兩種藥物進行編號,范圍為1~2。
SAS程序如下:
proc plan seed=10000;
factors subject=8 period=2 ordered;treatments drug=2 cyclic;
output out=a period cvals=('第1階段''第2階段')drug nvals=(1 2);
run;
ods html style=analysis;
proc tabulate format=2.0;
class subject period;var drug;
table subject='',drug='藥物種類 '*
period=''*sum=''/box=[label='受試者編號 '];
run;
ods html close;
輸出結果見表3。表格內(nèi)數(shù)字為藥物的編號。
表3 例3的隨機化設計方案
含區(qū)組因素的析因設計,比析因設計多考慮了一個區(qū)組因素。它先按受試對象的某種屬性形成區(qū)組,然后將各區(qū)組內(nèi)的受試對象隨機地分配至各因素各水平完全組合形成的各處理組中去〔4〕。
【例4】選擇4個區(qū)組的受試對象,各區(qū)組內(nèi)有4個條件接近的受試對象。擬采用含區(qū)組因素的析因設計考察藥物(兩種藥物)及劑量(兩個劑量)的效應。請給出具體的設計方案。
對16個受試對象進行編號,區(qū)組1內(nèi)的受試對象編號范圍為1~4,區(qū)組2內(nèi)的受試對象編號范圍為5~8,依此類推。
SAS程序如下:
%let factor_a=2;
proc plan seed=10000;
factors block=4 ordered r=4;output out=aa;
run;
data bb;
set aa;subject=_n_;do i=1 to&factor_a;if r< =i* &factor_a and r>(i-1)* &factor_a then do;a=i;b=r-(i-1)* &factor_a;end;end;
run;
data cc;
set bb;
if a=1 and b=1 then c='A1B1';
if a=1 and b=2 then c='A1B2';
if a=2 and b=1 then c='A2B1';
if a=2 and b=2 then c='A2B2';
run;
ods html style=analysis;
proc tabulate format=2.0;
class block c;var subject;
table block='',subject='受試對象編號'*c=''*sum=''/box=[label='區(qū)組 '];
run;
ods html close;
程序中設置了宏變量,factor_a的值為因素藥物種類的水平數(shù)。輸出結果見表4。表格內(nèi)數(shù)字為受試對象的編號。
表4 例4的隨機化設計方案
平衡不完全隨機區(qū)組設計是隨機區(qū)組設計的一種補救,適用于原本可采用隨機區(qū)組設計但實驗因素的水平數(shù)大于每個區(qū)組內(nèi)實際可用的受試對象數(shù)的情形〔5〕。
【例5】擬采用平衡不完全隨機區(qū)組設計考察5種處理方法的效果,選取5個區(qū)組的受試對象,每個區(qū)組內(nèi)有3個。請給出具體的設計方案。
對受試對象進行編號,區(qū)組1內(nèi)的受試對象編號范圍為1~3,區(qū)組2內(nèi)的受試對象編號范圍為4~6依此類推。
SAS程序如下:
%let block=5;%let treat=5;%let subject=3;%macro aa(treat);
data a;%do i=1%to&treat;
treatment=compress('療法 '||& i);
output;%end;
run;
%mend aa;
%aa(&treat);
proc optex data=a seed=10000 coding=orth;
class treatment;model treatment;blocks structure=(&block)&subject;output out=b;
run;
data c;
set b;number=_n_;
run;
ods html style=analysis;proc tabulate format=2.0;
class block treatment;var number;
table block='',number='受試對象編號 '*
treatment=''*sum=''/box=[label='區(qū)組 '];
run;
ods html close;
程序中使用%let語句設置了三個宏變量,block、treat和subject分別表示區(qū)組的個數(shù)、處理的個數(shù)和每組中所能處理的受試對象個數(shù)。輸出結果見表5。表格內(nèi)數(shù)字為受試對象的編號。
表5 例5的隨機化設計方案
總之,借助SAS軟件的強大功能,可以較為方便地實現(xiàn)各種含區(qū)組因素的實驗設計類型。本文所涉及的plan過程和optex過程,均基于隨機數(shù)來產(chǎn)生設計方案〔6〕。所以,借助這兩個過程,事先給出隨機種子數(shù),進行隨機化后得到的實驗設計方案,既符合隨機原則的要求,也具有可重現(xiàn)性,應予以提倡〔7〕。
1.徐勇勇.醫(yī)學統(tǒng)計學.第2版.北京:高等教育出版社,2004:167-170.
2.孫振球.醫(yī)學統(tǒng)計學.北京:人民衛(wèi)生出版社,2002:59-60.
3.蘇炳華.新藥臨床試驗統(tǒng)計分析新進展.上海:上??茖W技術文獻出版社,2000:63-115.
4.胡良平.統(tǒng)計學三型理論在實驗設計中的應用.北京:人民軍醫(yī)出版社,2006:71-106.
5.胡良平.SAS統(tǒng)計分析教程.北京:電子工業(yè)出版社,2010:687-689.
6.王睿,賀佳.隨機抽樣方法的SAS實現(xiàn).中國衛(wèi)生統(tǒng)計,2007,24(1):85,93.
7.劉玉秀,姚晨,楊友春,等.隨機化臨床試驗及隨機化的SAS實現(xiàn).中國臨床藥理學與治療學,2001,6(3):193-195.