南方醫(yī)科大學(xué)公共衛(wèi)生學(xué)院生物統(tǒng)計(jì)學(xué)系(510515) 錢晨堅(jiān) 吳研鵬 段重陽(yáng) 陳平雁
本刊之前已介紹了單樣本的kappa系數(shù)檢驗(yàn)(二分類變量)、相關(guān)系數(shù)檢驗(yàn)(連續(xù)變量)和Lin和諧系數(shù)檢驗(yàn)(連續(xù)變量)等有關(guān)相關(guān)分析的樣本量估計(jì)方法[1-2],本文將進(jìn)一步介紹相關(guān)分析中單樣本Cronbachα系數(shù)檢驗(yàn)、單樣本組內(nèi)相關(guān)系數(shù)檢驗(yàn)和兩獨(dú)立樣本Pearson相關(guān)系數(shù)檢驗(yàn)的樣本量估計(jì)方法,前兩種方法主要用于量表的評(píng)價(jià)。
(1)差異性檢驗(yàn)
①Cronbachα系數(shù)檢驗(yàn)
方法:Feldt等[3]提出的單樣本Cronbachα系數(shù)檢驗(yàn)樣本量的估計(jì)方法,是建立在自由度為v1和v2的F分布上的,檢驗(yàn)效能的計(jì)算公式如下:
(1)
式中,v1=n-1,v2=(n-1)(k-1),n為樣本量,k為量表的條目數(shù);α為檢驗(yàn)水準(zhǔn),s取1表示單側(cè)檢驗(yàn),取2表示雙側(cè)檢驗(yàn),1-β為檢驗(yàn)效能;F1-α(v1,v2)表示
自由度為v1和v2的F分布上側(cè)α分位數(shù),ProbF表示F分布的累積分布函數(shù);ρα0和ρα1分別表示已知總體的Cronbachα系數(shù)和預(yù)期總體的Cronbachα系數(shù)。
計(jì)算樣本量時(shí),設(shè)定樣本量n的初始值為2,通過不斷增加樣本量直至檢驗(yàn)效能滿足設(shè)定條件為止,最終得到的所需樣本量。
【例1】欲評(píng)價(jià)某生活質(zhì)量量表(SF-36)的信度,已知該量表共36個(gè)條目,即k=36。預(yù)期該量表的Cronbachα系數(shù)為0.89,以Cronbachα系數(shù)等于0.8為目標(biāo)值(即原假設(shè)ρα0=0.8)。試估計(jì)單側(cè)檢驗(yàn)水準(zhǔn)α=0.025,檢驗(yàn)效能為90%,該量表的Cronbachα系數(shù)不低于0.8所需樣本量。
nQuery Advanced 8.6.0.0實(shí)現(xiàn):設(shè)置單側(cè)檢驗(yàn)水準(zhǔn)α=0.025,檢驗(yàn)效能1-β=90%,其他數(shù)據(jù)相應(yīng)代入,在nQuery Advanced 8.6.0.0主菜單選擇:
方法框中選擇:Test for One Coefficient(Cronbach)Alpha
在彈出的樣本量計(jì)算窗口將各參數(shù)值鍵入,如圖1所示,結(jié)果n=60。即本研究所需樣本量為60例。
圖1 nQueryAdvanced8.6.0.0關(guān)于例1樣本量估計(jì)的參數(shù)設(shè)置與計(jì)算結(jié)果
SAS 9.4軟件實(shí)現(xiàn):
/*Cronbach alpha系數(shù)檢驗(yàn)*/
%macro cronbach(
alpha=/*檢驗(yàn)水準(zhǔn)*/
,side=/*單雙側(cè)檢驗(yàn),1表示單側(cè)檢驗(yàn),2表示雙側(cè)檢驗(yàn)*/
,r0=/*已知總體的Cronbachα系數(shù)*/
,r1=/*預(yù)期總體的Cronbachα系數(shù)*/
,k=/*量表?xiàng)l目數(shù)*/
,power=/*檢驗(yàn)效能(%)*/
);
data a;
r0=&r0;r1=&r1;alpha=αk=&k;side=&side;power=&power/100;
/*輸出錯(cuò)誤信息*/
if(alpha>0.2 | alpha<0)then do;
error=1;
put “error:Test significance level′s range:0-0.2”;
end;
if(side^=1 & side^=2)then do;
error=1;
put “error:Side′s range:1 OR 2”;
end;
if(r0<=0 | r0>=1)then do;
error=1;
put “error:r0′s range:0 end; if(r1<=0 | r1>=1)then do; error=1; put “error:r1′s range:0 end; if(k<2)then do; error=1; put “error:k must be greater than 1”; end; if(&power>100 | &power<0)then do; error=1; put “error:Power′s range:0-100”; end; /*如有錯(cuò)誤,跳出循環(huán)*/ if(error=1)then stop; power=0;n=2; do while(power<&power); f1=FINV(1-alpha/side,n-1,(k-1)*(n-1)); f2=FINV(alpha/side,n-1,(k-1)*(n-1)); c=(1-r1)/(1-r0); /*r0 if(r0 < r1)then power=100*(1-PROBF(c*f1,n-1,(k-1)*(n-1))); /*r0>r1*/ if(r0 > r1)then power=100*(PROBF(c*f2,n-1,(k-1)*(n-1))); if(power>=&power)then leave; else n=n+1; end; power=round(power,0.01); run; /*結(jié)果輸出*/ proc print data=a label; var alpha side r0 r1 k power n; label alpha=“Test Significance Level” side=“1 or 2 sided” r0=“Null Coefficient Alpha” r1=“Alternative Coefficient Alpha” k=“Number of Raters” power=“Power(%)” n=“Sample Size”; quit; %mend cronbach; %cronbach(alpha=0.025,side=1,r0=0.8,r1=0.89,k=36,power=90) SAS運(yùn)行結(jié)果: 圖2 SAS 9.4 關(guān)于例1樣本量估計(jì)的參數(shù)設(shè)置與計(jì)算結(jié)果 ②組內(nèi)相關(guān)系數(shù)檢驗(yàn) 方法:Donner和Eliasziw[4]提出的單樣本組內(nèi)相關(guān)系數(shù)(interclass correlation coefficient,ICC)單側(cè)檢驗(yàn)的樣本量估計(jì)方法,是建立在自由度為v1和v2的F分布上的,檢驗(yàn)效能的計(jì)算公式如下: (2) 式中,v1=n-1,v2=n(m-1),n為樣本量,m為處理組數(shù)或重復(fù)因素的水平數(shù);α為檢驗(yàn)水準(zhǔn),1-β為檢驗(yàn)效能;F1-α(v1,v2)表示自由度為v1和v2的F分布上側(cè)α分位數(shù),ProbF為F分布的累積分布函數(shù);ρI0和ρI1為已知總體的組內(nèi)相關(guān)系數(shù)和預(yù)期總體的組內(nèi)相關(guān)系數(shù)。 計(jì)算樣本量時(shí),設(shè)定樣本量n的初始值為2,通過不斷增加樣本量直至檢驗(yàn)效能滿足設(shè)定條件為止,最終得到的n表示所需樣本量。 【例2】某研究使用葡萄糖氧化酶法對(duì)一批血液樣本進(jìn)行血糖濃度測(cè)定,欲評(píng)價(jià)不同實(shí)驗(yàn)者使用該法的測(cè)定結(jié)果一致性,即組內(nèi)相關(guān)系數(shù)的大小。該研究下,參與一致性測(cè)定的實(shí)驗(yàn)者人數(shù)為3,即m=3。預(yù)期該研究的組內(nèi)相關(guān)系數(shù)為0.85,以組內(nèi)相關(guān)系數(shù)大于0.75(信度良好)為目標(biāo)值(即原假設(shè)ρI0=0.75)。試估計(jì)單側(cè)檢驗(yàn)水準(zhǔn)α=0.025,檢驗(yàn)效能為90%,欲驗(yàn)證該研究的組內(nèi)相關(guān)系數(shù)不低于0.75所需血液樣本的樣本量。 nQuery Advanced 8.6.0.0實(shí)現(xiàn):設(shè)置單側(cè)檢驗(yàn)水準(zhǔn)α=0.025,檢驗(yàn)效能1-β=90%,其他數(shù)據(jù)相應(yīng)代入,在nQuery Advanced 8.6.0.0主菜單選擇: 方法框中選擇:Test for Intraclass(Intracluster)Correlation 在彈出的樣本量計(jì)算窗口將各參數(shù)值鍵入,如圖3所示,結(jié)果n=92。即本研究所需樣本量為92例。 圖3 nQueryAdvanced8.6.0.0關(guān)于例2樣本量估計(jì)的參數(shù)設(shè)置與計(jì)算結(jié)果 SAS 9.4軟件實(shí)現(xiàn): /*組內(nèi)相關(guān)系數(shù)檢驗(yàn)*/ %macro ICC( alpha=/*檢驗(yàn)水準(zhǔn)*/ ,r0=/*已知總體的組內(nèi)相關(guān)系數(shù)*/ ,r1=/*預(yù)期總體的組內(nèi)相關(guān)系數(shù)*/ ,m=/*處理組數(shù)或重復(fù)因素的水平數(shù)*/ ,power=/*檢驗(yàn)效能(%)*/ ); data a; r0=&r0;r1=&r1;alpha=&alpha;m=&m;power=&power/100; /*輸出錯(cuò)誤信息*/ if(alpha>0.2 | alpha<0)then do; error=1; put “error:Test significance level′s range:0-0.2”; end; if(r0<0 | r0>=1)then do; error=1; put “error:r0′s range:0<=r0<1”; end; if(r1<0 | r1>=1)then do; error=1; put “error:r1′s range:0<=r1<1”; end; if(r0>=r1)then do; error=1; put “error:r1 must be greater than r0”; end; if(m<2)then do; error=1; put “error:m must be greater than 1”; end; if(&power>100 | &power<0)then do; error=1; put “error:Power′s range:0-100”; end; /*如有錯(cuò)誤,跳出循環(huán)*/ if(error=1)then stop; power=0;n=2; do while(power<&power); f=FINV(1-alpha,n-1,n*(m-1)); c=(1+m*r0/(1-r0))/(1+m*r1/(1-r1)); power=100*(1-PROBF(c*f,n-1,n*(m-1))); if(power>=&power)then leave; else n=n+1; end; power=round(power,0.01); run;/*結(jié)果輸出*/ proc print data=a label; var alpha r0 r1 m power n; label alpha=“Test Significance Level” r0=“Null Intracluster Correlation” r1=“Alternative Intracluster Correlation” m=“Number of Measurements/Raters” power=“Power(%)” n=“Sample Size”; quit; %mend ICC; %ICC(alpha=0.025,r0=0.75,r1=0.85,m=3,power=90) SAS運(yùn)行結(jié)果: 圖4 SAS 9.4 關(guān)于例2樣本量估計(jì)的參數(shù)設(shè)置與計(jì)算結(jié)果 (1)差異性檢驗(yàn) ①兩獨(dú)立樣本Pearson相關(guān)系數(shù)檢驗(yàn) 方法:Zar[5]給出了兩獨(dú)立樣本Pearson相關(guān)系數(shù)檢驗(yàn)的樣本量估計(jì)方法?;诖髽颖窘普龖B(tài)分布理論,檢驗(yàn)效能的計(jì)算公式如下: (3) 計(jì)算樣本量時(shí),設(shè)定樣本量n1的初始值為4,n2=n1/R,R為兩組樣本量比值,通過不斷增加樣本量直至檢驗(yàn)效能滿足設(shè)定條件為止,最終得到的n1和n2分別表示兩組所需樣本量。 【例3】某研究欲比較不同組織細(xì)胞的端粒DNA長(zhǎng)度與年齡的相關(guān)性。據(jù)既往研究,外周血白細(xì)胞中端粒DNA長(zhǎng)度與年齡的相關(guān)性系數(shù)為0.79,心肌細(xì)胞中端粒DNA長(zhǎng)度與年齡的相關(guān)性系數(shù)為0.87。兩相關(guān)系數(shù)分別從兩組人群獲得,試估計(jì)雙側(cè)檢驗(yàn)水準(zhǔn)α=0.05,檢驗(yàn)效能為80%,兩組樣本量比例R=1的情況下,能夠發(fā)現(xiàn)這兩種不同細(xì)胞的端粒DNA長(zhǎng)度與年齡的相關(guān)系數(shù)存在差異所需的樣本量。 nQuery Advanced 8.6.0.0實(shí)現(xiàn):設(shè)置檢驗(yàn)水準(zhǔn)α=0.05,雙側(cè)檢驗(yàn),檢驗(yàn)效能1-β=80%,其他數(shù)據(jù)相應(yīng)代入。在nQueryAdvanced 8.6.0.0主菜單選擇: 方法框中選擇:Two Correlations 在彈出的樣本量計(jì)算窗口將各參數(shù)值鍵入,如圖5所示,結(jié)果n1=233,n2=233。即本研究?jī)山M所需樣本量各為233例,共需466例。 圖5 nQueryAdvanced8.6.0.0關(guān)于例3樣本量估計(jì)的參數(shù)設(shè)置與計(jì)算結(jié)果 SAS 9.4軟件實(shí)現(xiàn): /*兩獨(dú)立樣本相關(guān)系數(shù)的檢驗(yàn)*/ %macro twocor( alpha=/*檢驗(yàn)水準(zhǔn)*/ ,side=/*單雙側(cè)檢驗(yàn),1表示單側(cè)檢驗(yàn),2表示雙側(cè)檢驗(yàn)*/ ,p1=/*樣本1的相關(guān)系數(shù)*/ ,p2=/*樣本2的相關(guān)系數(shù)*/ ,R=/*兩組樣本量比例*/ ,power=/*檢驗(yàn)效能(%)*/ ); data a; p1=&p1;p2=&p2;alpha=&alpha;R=&R;side=&side; /*輸出錯(cuò)誤信息*/ if(alpha>0.2 | alpha<0)then do; error=1; put “error:Test significance level′s range:0-0.2”; end; if(side^=1 & side^=2)then do; error=1; put “error:Side′s range:1 OR 2”; end; if(p1<=-1 | p1>=1)then do; error=1; put “error:P′s range:-1 end; if(p2<=-1 | p2>=1)then do; error=1; put “error:P′s range:-1 end; if(&power>100 | &power<0)then do; error=1; put “error:Power′s range:0-100”; end; /*如有錯(cuò)誤,跳出循環(huán)*/ if(error=1)then stop; z1=0.5*log((1+p1)/(1-p1)); z2=0.5*log((1+p2)/(1-p2)); power=0; n1=4; /*直到效能達(dá)到要求,跳出循環(huán)*/ do while(power<&power); sigma=sqrt(1/(n1-3)+1/(n1/R-3)); /*雙側(cè)*/ if side=2 then power=100*(probnorm((z1-z2)/sigma-probit(1-alpha/2))+ probnorm(-((z1-z2)/sigma)-probit(1-alpha/2))); /*p1 if side=1 and p1 power=100*(probnorm((z1-z2)/sigma-probit(1-alpha))); /*p1>p2,單側(cè)*/ if side=1 and p1>p2 then power=100*(probnorm(-((z1-z2)/sigma)- probit(1-alpha))); if(power >=&power)then leave; else n1=n1+1; n2=n1/R; end; n2=ceil(n1/R);R=n1/n2; power=round(power,0.01); run; /*結(jié)果輸出*/ proc print data=a label; var alpha side p1 p2 R n1 n2 power; label alpha=“Test significance level” side=“1 or 2 sided test” p1=“Control Correlation” p2=“Treatment Correlation” R=“Sample Size Ratio” n1=“Control Sample Size” n2=“Treatment Sample Size” power=“Power(%)”; quit; %mend twocor; %twocor(alpha=0.05,side=2,p1=0.79,p2=0.87,R=1,power=80) SAS運(yùn)行結(jié)果: 圖6 SAS 9.4關(guān)于例3樣本量估計(jì)的參數(shù)設(shè)置和計(jì)算結(jié)果2.兩獨(dú)立樣本相關(guān)性分析
中國(guó)衛(wèi)生統(tǒng)計(jì)2021年3期