其實早在去年年底,我就有打算將這個經營五年多(無名兩年+痞克幫三年)的部落格結束掉。
當年創立這個部落格的原因,是為了要紀錄自己在美國留學的點點滴滴。
這個日記性質的部落格,後來慢慢也變成兼寫棒球、統計、JOJO等雜七雜八的內容。
但無論寫的內容是什麼,都有我在北卡的記憶。
可是隨著學業的完成,投入了職場,我明白自己已經完全踏入了人生另一個階段。
其實早在去年年底,我就有打算將這個經營五年多(無名兩年+痞克幫三年)的部落格結束掉。
當年創立這個部落格的原因,是為了要紀錄自己在美國留學的點點滴滴。
這個日記性質的部落格,後來慢慢也變成兼寫棒球、統計、JOJO等雜七雜八的內容。
但無論寫的內容是什麼,都有我在北卡的記憶。
可是隨著學業的完成,投入了職場,我明白自己已經完全踏入了人生另一個階段。

去年年底,俺好友「Dr. 史考特。哈蘇」(見上圖) 從密爾瓦基打電話給我,問我有沒有「狗屎」...啊不對,是「Gauss」啦~
我跟他講這套軟體基本上從俺離開清大統研所後就再也沒有見到有人在用了。
我剛進清大統研時,看到一堆學長姐在用這套軟體跑模擬。
可是 debug 過程相當麻煩,所以我就沒有去研究了。
事實上,到了我們這一屆開始寫論文時,整所也只剩下我麻吉「賴桑」用 Gauss 跑模擬。
餓死抬頭,這些年來很多人一直找我做過許多power analysis來求power或樣本數,而SAS內建的PROC POWER和PROC GLMPOWER這兩個程序已經能夠把最基本的各種假設檢定、ANOVA和GLM下的power analysis給搞定,順便還可以畫出相當精美的圖形。
不過,如果遇到使用GLMM時,早期他的power analysis是無解的,也很少看有人去做過,不然就是退回到用GLM的power analysis結果來替代。但至從「SAS for Mixed Models」這本書升級到第二版時,裡面就附上了一個完整的章節教大家怎樣去做GLMM的power analysis。有興趣的人可以點下面這個連結看線上版本的第十二章:
不過書裡面的程式只能計算power,沒有辦法去推算達到某個程度的power時需要多少樣本。不過有人在網路上提供了下列這段程式碼,專門來計算Mixed model with repeated measurement的所需樣本:
n = function(m,s2b,rho,delta,alpha,power) {
這一篇其實一個多月前就該發的,但時間一拖自己也熊熊忘了。剛剛才想到所以稍微寫一下發表。
我過去這一年來在北卡大護理系接到最主要的統計諮詢案子是一個在護理系念了八年的超級大老級博士生,我們都叫她 Sue,老家在田納西。她本身就已經很有年紀了,可能比我媽還老,女兒好像也長大嫁人了。我剛進到護理系工作時,就曾被一個當年也在護理系念博班的學姐,同時也是她的「同梯」,帶去她家吃飯。結果現在那個學姐都回北醫當 faculty 好幾年了,但 Sue 卻還一直陷在自己論文的無底深淵裡面。
Sue 的研究是有關於人體疼痛後的反應,而資料是她自己一個一個慢慢找自願者接受測試收集得來的,樣本大概才六十幾人,但變數超多,所以好像收了好幾年才收完。收完後我光是幫她清資料就花了個把月,接著幫她架模式,中間也是折騰很久才弄完。結果在去年十月還是十一月的時候,她就偷偷地完成了 final defense 了。她口試這件事護理系聽說沒幾個人知道,連我跟她那麼熟的人都是之後才曉得。
但事情就這樣結束了嗎?當然不是,否則就不會有這篇文章了。在她號稱非常機密的 final defense 結束後,居然有口試委員不肯簽名,而有些已經簽名的口試委員則要求她要改善統計模式。OK,於是我就教她怎樣做 mixed model 的模式鑑定。結果做出來後,果然發現原先使用的模式違反了一些模式假設。而要解決的最簡單的方法就是去做 log transformation。
經過 log transformation 之後,模式果然好看了一點,雖然還不是相當完美。不過實證研究的統計分析本來就很難做出跟教科書裡面的範例一樣漂亮的結果,所以我並不意外。不過那段時間那些口試委員意見還是很多,所以 Sue 花了很多時間改模式。但改到後來,我發現她的模式已經很難拿去解釋她論文裡面的 research questions。我一直提醒她,過度配飾統計模式的結果,就已經不是在「用」統計,而是在「玩」統計了。而且,她現在要拿的是「護理博士」,不是「統計博士」,把統計分析的部分弄到那麼細那麼複雜,對她真正應該著重於「護理研究分析」上沒太大幫助。不過她還是沒有辦法抵抗口試委員的要求,畢竟我沒有辦法代替她的口試委員簽名,所以她只能聽口試委員的。不過後來我看有些口試委員要她補做的統計分析居然是錯誤地使用統計工具在不適用的資料上,當然程式還是會幫你跑出一堆報表出來,但在我的眼中都是無用的啊!
兩年前,我在遇到一個「如何計算兩組時間序列資料的相關程度」的問題時,著實是卡條了好一陣子。當時去問還在當我 supervisor 的馬克時,他跟我說簡單地用一個 mixed model 然後那個參數估計值就可以當作兩個時間序列資料的相關程度,但我一直覺得這個答案很不好。其實也不是說他的建議是錯的,而是就兩個方面來講,一是 mixed model 的配適過程複雜,除了一開始要 model selection 外,之後還要弄 model diagnostics,對一般使用者來講並不是那麼容易。其次,參數估計值出來後並非介於 -1 到 1 之間,所以沒有一般相關係數那麼直觀。
後來這個問題就有點不了了之,直到多年後的兩年後才無意間發現解決方法。
在這邊跟大家介紹一種叫做 CCF 的方法。當然這個 CCF 不是指陳金鋒(Chen, Chin-Feng),而是指 cross-correlation function。中文怎麼翻譯呢?其實我也不知道。囧rz

其實也不算是密技啦!只是前面掛這兩個字,感覺這篇文章好像比較威似的。
這是繼 [密技] 如何在 Vista 上安裝 SAS 之後另一篇關於統套軟體安裝的教學。
不過還是要廢話兩下,寫一下為什麼要寫這篇文章的原因。話說前幾天最新版本的 Ubuntu 8.10 釋出了。去年我曾經安裝過 Ubuntu 7.10 的版本,但是遇到諸多問題,比方說音效卡驅動程式安裝後沒有作用,中文輸入法也安裝失敗,更重要的是 SAS Linux 無法安裝在同樣也是 Linux 架構下的 Ubuntu 上。無奈之下只好又屈服於萬惡微軟的淫威下。經過了一年之後,雖然中間歷經 Ubuntu 8.4 釋出但我沒安裝,這次我還是不放棄希望,期盼 Ubuntu 8.10 可以讓我突破一些技術上的困難。經過一個晚上的努力,終於把 Ubuntu 裝上。開機進入畫面後,聽到 Ubuntu 開機音樂,我就曉得音效的部份在這個版本是不用再擔心了。之後使用 Lazy Ubuntu 優化系統,一些軟體的問題也解決了。不過有些軟體是 Lazy Ubuntu 沒有提供的,所以就得另外獨立安裝,而 R 就是在這種情況下安裝上去的。
好了,就邁入正題吧!
將近一年前分享了這篇文章:
[密技] 如何在 Vista 安裝SAS
成為本部落格最熱門的文章。這必須要"洩洩" Vista 的高度不相容性以及 SAS 公司遲遲沒有釋出更新檔。不過這一年來,還是陸續看到一些朋友們按照文內的步驟安裝但仍舊安裝失敗的情況。於是我又回原來發佈這個方法的部落格瀏覽一下,發現有人在回文內分享了另種解決方案。
其實方法很簡單,原來的步驟一個都不能漏,但是必須重開機並進入「安全模式」,然後再依照文內之前所述的步驟來安裝即可。
昨天在幫一個博士班學生處理 mixed model 的 model diagnostics 問題時,使用 PROC MIXED 程序並配合 ODS GRAPHICS 來產生圖形時,發現 log 裡面出現這一行錯誤訊息:
Java class generated an exception
由於兩年前我在考資格考時還有用過這道指令,記得當時可以順利生出 model diagnostics 的圖形,不過這兩年一直都沒再使用這個功能,所以完全搞不清楚這個錯誤訊息是怎麼跑出來的,因此只好去 SAS 官網上面找看看。果真看到 SAS support 網頁下有說明這個錯誤訊息的源由:

好像很久沒有發 statistical consulting 的文章,因為這幾年在護理系什麼樣大大小小的統計問題都遇過了,後面的挑戰性就越來越低,所以也沒遇到什麼麻煩。
不過上星期一個 clinical staff 的人寫 email 給我請求統計協助。她說她找了兩個我們系上的學生問,可是他們都不會。我想說這是什麼樣的天大難題,居然讓兩個生統系博士班的學生束手無策,所以我就先答應了她,然後把她 email 給我的一個文件下載來看看。
結果,短短兩頁的說明文件,讓我看了一個多小時才看的懂。不是她寫的用字太難,而是整個敘述相當沒有條理。後來經過我額外整理出十點條目才把她的研究和問題釐清。
簡單來講,這是一個針對膝蓋手術後的療程試驗,有實驗組和對照組。實驗組用的是新療程,對照組當然是用傳統方法。但問題時,這六十幾個病人有些在進入這個臨床試驗時就已經用了額外的療法,有些病人則是在進入試驗後,自己額外去使用別的療法。總之這些病人的疼痛效應完全被跟實驗不相干的療程給干擾到了。
而基本上這種情況幾乎可以預想到統計分析的結果絕對會有偏差,而他們也不可能再用原始的組別(實驗組vs對照組)去作檢定或分析。但要他們去重新收資料已經是不可能了,畢竟金錢和人力都花下去了,現在就看有沒有辦法在 study design 上作任何改進。