Как создать дробный факторный дизайн в R? - PullRequest
10 голосов
/ 18 февраля 2011

Я изо всех сил пытаюсь создать довольно сложный дробный факторный дизайн, используя R.

(см. http://en.wikipedia.org/wiki/Fractional_factorial_design)

Я искал в Google и R-списках и проверилнесколько многообещающих пакетов (AlgDesign, DoE.base, acepack)

Но я не нашел ничего такого, что могло бы обрабатывать дробный дизайн (интересует только основные эффекты) с 8 факторами, которые имеют 3, 4, 6,или 11 уровней каждый!

Кто-нибудь может указать мне правильное направление?

Спасибо!

Ответы [ 2 ]

9 голосов
/ 19 февраля 2011

Я использовал пакет AlgDesign для генерации дробных факторных планов:

  1. Создание полного факторного плана с помощью функции gen.factorial().
  2. Передайте результаты в optFederov() - это попытается найти оптимальный дробный план, используя алгоритм Федерова.

Следующий код занимает около 3 минут для запуска на моем ноутбуке с Windows. Пример находит приблизительный оптимальный дробный факторный план с 8 факторами с 3, 4, 6 или 11 уровнями каждый, как вы указали.

Обратите внимание, что я использую optFederov(..., approximate=TRUE) - это находит приблизительное решение. На моей машине, когда я установил approximate=FALSE, выполнение кода занимает слишком много времени, и Windows выдает ошибку. Вы можете поэкспериментировать с различными настройками.

library(AlgDesign)

levels.design = c(3,4,6,11,3,4,6,11)
f.design <- gen.factorial(levels.design)

fract.design <- optFederov(
        data=f.design,
        nTrials=sum(levels.design),
        approximate=TRUE)

А на выходе:

head(f.design)

  X1 X2 X3 X4 X5 X6 X7 X8
1 -1 -3 -5 -5 -1 -3 -5 -5
2  0 -3 -5 -5 -1 -3 -5 -5
3  1 -3 -5 -5 -1 -3 -5 -5
4 -1 -1 -5 -5 -1 -3 -5 -5
5  0 -1 -5 -5 -1 -3 -5 -5
6  1 -1 -5 -5 -1 -3 -5 -5


fract.design
$D
[1] 6.813321

$A
[1] 0.375804

$Ge
[1] 0.998

$Dea
[1] 0.998

$design
       Rep.. X1 X2 X3 X4 X5 X6 X7 X8
1          1 -1 -3 -5 -5 -1 -3 -5 -5
10         1 -1  3 -5 -5 -1 -3 -5 -5
...
626475     1  1 -3 -5 -5  1  3  5  5
627253     1 -1 -3  5  5  1  3  5  5

$rows
 [1]      1     10     61    723    790   1596   2307   2314   2365   2374
[11]   2376   7129   7140   7198   7849   7911   7918   7920   8713   8724
[21]   9433   9504  48252  48301  48303  49105  49107  49114  49174  54660
[31]  54711  56233  56304 570241 570963 571834 571836 572556 578151 579015
[41] 617821 617823 619414 620127 620134 625618 626475 627253
3 голосов
/ 21 января 2016

Просто чтобы добавить к ответу Андри. Вот как мы интерпретируем силу оптимального дизайна.

Эффективность проектирования оценивается Ge. Это должно быть 1 или близко к 1. Ниже ссылки имеют некоторое объяснение, и я сослался на книгу «Разработка и анализ экспериментов с R». Думал, что это может быть полезно для тех, кто ищет ответ. Ниже приведены источники, из которых я получил эту информацию.

https://stat.ethz.ch/pipermail/r-help/2007-October/143217.html

Ошибка в иерархическом байесовском алгоритме R: байесовский пакет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...