python中带约束的广义子集设计

2024-05-18 23:27:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我有三个因素F1, F2, F33, 3, 6对应的水平,我想限制实验设计中它们组合的数量

就我通过搜索所见,这可以通过pyDOE2广义子集设计来实现,如:

import pyDOE2

levels = [3, 3, 6]
reduction = 3
result = pyDOE2.gsd(levels, reduction)
result.data.tolist()
>>>[[0, 0, 0],
 [0, 0, 3],
 [0, 1, 1],
 [0, 1, 4],
 [0, 2, 2],
 [0, 2, 5],
 [1, 0, 1],
 [1, 0, 4],
 [1, 1, 2],
 [1, 1, 5],
 [1, 2, 0],
 [1, 2, 3],
 [2, 0, 2],
 [2, 0, 5],
 [2, 1, 0],
 [2, 1, 3],
 [2, 2, 1],
 [2, 2, 4]]

然而,我想做的是对可能的因素组合设置一些限制。例如,我不希望包含F1L1和F2L3或F2L1和F3L2的组合(F表示因子,L表示级别)。考虑到这些约束条件,是否有一种方法可以获得最佳的简化组合

这不是一个pyDOE2特定的问题(任何其他可以实现这一点的库都可以),但我想用python来解决这个问题


Tags: importdata数量水平result子集f2f1

热门问题