2013-02-07 94 views
3

我正在嘗試在R中爲聯合分析實驗(如SPSS orthoplan)創建因子設計。R中的Orthoplan(部分因子設計)

過去的問題#1中搜索,我發現這個以前的答案:

How to create a fractional factorial design in R?

這的確是一個有用的答案,但只有在情況下,你必須有數字水平的因素。

不幸的是這不是我的情況,因爲我想使用的因素是名義變量,即它們的級別不是數值類型,而是因子類型:例如,我必須處理一個指示產品顏色的因子綠色,黃色或紅色。

我試圖以這樣的方式提出作爲一個答案的代碼修改的問題How to create a fractional factorial design in R?

f.design <- gen.factorial(levels.design,factors="all") 

但結果也不均衡,也不正交。而且,您必須在optFederov函數中定義試驗的確切數量。在回答審判的建議數量:

nTrials=sum(levels.design) 

但爲了在與標稱因素設計一個平衡的解決方案,我希望它至少應該是:

nTrials=prod(unique(levels.design)) 

有一個包無論如何可以處理這樣的問題,這是ulrike groemping教授的FrF2包,但它只處理二分變量,我不知道如何使用它來解決我的問題。

回答

4

之後已經有一段由自己研發的答案,我可以在這裏分享我發現:

是,在R中可以建立正交設計,以類似的方式,因爲它在SPSS orthoplan發生。

只需將變量nlevels定義爲包含變量級別的矢量。

然後你要撥打:

library(DoE.base)

fract.design <- oa.design(nlevels=levels.design)

功能將查找到正交設計(正是Kuhfeld W.,2009年,正交陣列)

庫如果沒有合適的可用正交設計,該函數將返回完整的階乘設計(因此在R中沒有其他選擇,但稱爲optFederov函數如上面在我的問題中所解釋的)。

作爲一個例子嘗試:

oa.design(nlevels=c(2,2,3))

oa.design(nlevels=c(2,2,4))

第一沒有一個解決方案(所以你會回來的全因子),但第二個確實有解決方案,8張卡,正交和平衡設計。