公告

[公告]
2014/01/17
由於已經是faculty的關係,不太有足夠時間寫部落格。因此更新的速度會相當緩慢。再加上近幾年來SAS GLOBAL FORUM沒有出現讓我覺得驚艷的技術文件,所以能分享的文章相對也減少許多。若有人推薦值得分享的SAS技術文件,請利用『問題討論區』告知。

2013/07/19
臉書留言板的功能因為有不明原因故障,因此特此移除。而intensedebate的留言板因管理不易,也一併移除。目前已經開啟內建的 G+ 留言系統,所以請有需要留言的朋友,可直接至『問題討論區』裡面留言。


2009年4月27日 星期一

Updates to SAS® Power and Sample Size Software in SAS/STAT® 9.2

原文載點:http://www2.sas.com/proceedings/forum2008/368-2008.pdf

SAS V9.2 釋出已經有一段時間,雖然仍舊有很多學校機關沒有升級到最新的版本,而仍舊沿用 V9.1.3,不過我已經用新版差不多快四個月的時間,所以之後會慢慢來介紹 V9.2 的新功能。這篇技術文件首先是來介紹新版的 proc power 以及 proc glmpower 所帶來的新的功能。



1. LOGISTIC REGRESSION

新版的 proc power 已經可以計算 logistic regression 下的 power analysis。範例如下:


proc  power;
logistic
alpha  =  0.05
vardist(’Duration’)  =  normal(4,  1.5)
testpredictor  =  ’Duration’
testoddsratio  =  1.7
responseprob  =  0.65
ntotal  =  50  60  70
power  =  .  ;
run;

語法的使用方法如下:


  • logistic:呼叫 logistic regression 下的 power analysis。
  • alpha:設定顯著水準。
  • vardist:設定 testpredictor 所指定的因變數 X 的分配,記得要再 vardist 後面用 ('....') 寫上在 testpredictor 一樣的變數名稱。此例是設定變數 Duration 的分配是 Normal(4, 1.5)。
  • testpredictor:因變數名稱
  • testoddsratio:因變數的 OR
  • responseprob:反應變數 Y 的機率
  • ntotal:樣本總數
  • power:power 設定值。
用法和一般的 proc power 一樣,如果要計算某個樣本下的 power,則 power option 後面就要打個 dot。如果已經決定了 power,想要知道多少的樣本才能滿足,則在 power option 後面填上設定值,在 ntotal option 後面打個 dot。

此範例的報表結果如下:


你拍攝的 2009-04-28_1637。

由於此例一口氣設定了三個樣本數(50, 60, 70),所以報表裡面也列出三個樣本數所產生的 power 值(0.664, 0.742, 0.805)。

2. CONFIDENCE INTERVAL FOR ONE PROPORTION

新版的 proc power 可以計算一個二項變數比例的信賴區間。此功能跟 proc freq 一樣。範例如下:


proc  power;
onesamplefreq  ci  =  Wilson
alpha  =  0.05
proportion  =  0.3
halfwidth  =  0.1
ntotal  =  70
probwidth  =  .;
run;

語法解釋如下:


  • onesamplefreq ci:計算係賴區間的方式。此例用 Wilcox score。另外五種分別為:Wald, continuity-corrected Wald, exact, Agresti-Coull, and Jeffreys
  • alpha:顯著水準
  • proportion:該二項變數的比例。
  • halfwidth:設定信賴區間一半的寬度。
  • ntotal:樣本總數。
  • probwidth:信賴區間
此例是計算一個比例為 0.3 的信賴區間寬度。由於程式中設定整個信賴區間的長度是 0.2(halfwidth*2),所以 probwidth 算出來的結果一定會小於 halfwidth*2。結果如下:


你拍攝的 2009-04-28_1649.png。

3. WILCOXON MANN-WHITNEY TEST FOR TWO INDEPENDENT GROUPS

Wilcoxon Mann-Whitney test 底下的 power analysis 在新版中也可以計算出來了,但只限定於兩個獨立樣本的檢定。範例如下:


proc  power;
twosamplewilcoxon
alpha  =  0.05
vard   ist(’lidocaine’)  =
ordinal(  (-3  -2  -1  0  1  2  3):  (.01  .04  .20  .50  .20  .04  .01)  )
vardist(’mironel  plus  lidocaine’)  =
ordinal(  (-3  -2  -1  0  1  2  3):  (.01  .03  .15  .35  .30  .10  .06)  )
variables  =  ’lidocaine’  |  ’mironel  plus  lidocaine’
sides  =  u
ntotal  =  .
power  =  0.85;
run;

語法解釋如下:


  • twosamplewilcoxon:呼叫兩獨立樣本檢定的 power analysis。
  • alpha:顯著水準。
  • vardist:指定 group 變數的屬性。以此為例,兩個變數都是 ordinal,並且每個類別(-3 -2 -1 0 1 2 3)對應到的機率(.01 .04 .20 .50 .20 .04 .0)都必須要寫上。由於有兩個 group 要比較,所以必須宣告 vardist 兩次。
  • variables:指定兩個 group variable 的變數名,中間記得用「|」隔開來。
  • sides:標明該檢定單尾還是雙尾,此例用「u」表單尾。
  • ntotal:樣本總數。
  • power:power設定值。
此例兩個要比較的群組分別是 lidocaine 和 mironel plus lidocane,要計算在 power=0.85 底下要多少樣本才夠,結果如下:


你拍攝的 2009-04-28_1754.png。


此外,SAS V9.2 中也設計了視窗介面來執行 power analysis。其實前幾個版本的 SAS 大概覺得受到 SPSS 或其他類似視窗介面型的統計軟體的威脅,在 V6.0 之後開始加入視窗分析介面,但總是讓人有種畫虎不成反類犬的情況。V9.2 版的情況大概也不可能一下跳升到 SPSS 或 Statistica 那種程度,更何況個人是覺得真要用視窗分析介面的話,SAS 的副產品「JMP」就可以辦到了,SAS 也不用特定來搞這塊。無論如何,從這份技術文件上,我們可以看到新版的視窗分析介面的確有點改進。以下是一些截圖:


你拍攝的 2009-04-28_1800.png。



你拍攝的 2009-04-28_1806.png。



你拍攝的 2009-04-28_1807.png。

但由於不覺得真的有到很方便的地步,所以建議還是用寫程式的方法來進行 power analysis。

CONTACT INFORMATION

Wayne Watson
Building S, Room 3040
SAS Institute, Inc.
SAS Campus Drive
Cary, NC 27513
Work Phone: 919-531-6770
E-mail: wayne.watson@sas.com
CODE { display: block; /* fixes a strange ie margin bug */ font-family: Courier New; font-size: 8pt; overflow:auto; background: #f0f0f0 url(http://klcintw.images.googlepages.com/Code_BG.gif) left top repeat-y; border: 1px solid #ccc; padding: 10px 10px 10px 21px; max-height:200px; height:200px; // for IE6 line-height: 1.2em; }