在我的整个时间里联合管理计划,我遇到过许多需要使用协变量的设计问题,既可以解决我自己的问题,也可以帮助客户找到其设计问题的解决方案。 我注意到,许多客户,甚至是非常有经验的客户,都不知道定制设计平台中的协变量选项。
首先,我想指出,自 JMP 10 以来,它就一直存在于自定义设计中的“添加因子”下拉列表中,直到现在您可能还没有注意到:

什么是协变量?
部分混淆源于协变量一词的使用。 在某些情况下,您会看到它用作控制效果,但不是主要兴趣(ANCOVA),您甚至可能会看到它松散地用于定义模型时的任何独立因素。
在设计的实验中,协变量是我们想要在实验中考虑的输入变量,但我们无法像控制其他类型的因素那样将其控制为任何值。 然而,如果我们可以提前测量这些输入的值,我们就可以在设计实验时考虑它们。
我什么时候会使用协变量?
如果您从“不受控制,但可提前观察”的角度考虑协变量,则会出现一些不同的用例。 您可能经常听到这样的想法候选集。 在自定义设计器中,指定协变量因子会生成供自定义设计器使用的运行“候选集”。 在定制设计中,候选集是从数据表中指定的。 通常,我们有额外的可控因素(可以采用范围内的任何值),我们可以允许自定义设计器选择它认为合适的因素(我们通常定义因素的方式)。
一般来说,我倾向于将协变量的使用分为两种情况:
使用行的子集
当使用自定义设计器选择协变量集的子集时,其想法是使用我们可以提前测量的协变量值,根据实验目标从候选集中选择最佳运行。 这最终比简单地随机抽样要有效得多。
作为一个很好的例子,我喜欢向人们指出《实验的优化设计:案例研究方法。 如果您没有这本书的副本,您可以阅读早期版本中的想法大纲布拉德利·琼斯的博客文章。
另一个常见的用例是提供对设计空间施加一些约束的候选集。 虽然这可以通过使用来完成来自定制设计器的因素约束,当区域相当复杂,或者您希望实验的运行具有一定的结构时,候选集方法非常有用。 例如,您可能希望连续变量仅采用五个不同的值,或者限制任何给定实验运行中非零因子的数量。
使用所有行
与上面描述的子集情况一样,当我们选择所有实验单元时,就会发生这种情况,并且我们可以在设计实验之前测量一些不可控的值。
一个可能不太明显的常见用例是强制为因素子集提供所需的结构。
例如,假设您正在设计一个 12 次运行的实验,其中包含一个两级分类因子 X1,级别为 A 和 B,以及四个连续因子 X2-X5,并附加了分类因子 1/3 的限制的运行需要处于 A 级,2/3 需要处于 B 级。
我们需要做的就是为具有 12 次运行的分类因子创建一个数据表,以及一个标有该因子名称的列。 将四行作为 A,八行作为 B。

在“自定义设计”中,选择“添加因子”->“协变量”,然后添加其余四个连续因子。 如果我们在单击“Make Design”之前将运行次数保留为 12,如下所示,

由此产生的设计将强制 X1 的运行由候选集(具有所需的比率)指定,并设计连续因子的最佳设置。
使用之前博客文章中的这一想法的其他示例包括创建实验对响应随时间的线性趋势具有鲁棒性或确保对因素子集有明确的筛选设计结构,例如煮鸡蛋实验。
还要别的吗?
我们对协变量处理做了一些改进JMP 16 。 我在中突出显示了这些新作品另一个帖子。
@Ryan_Lekivetz ,候选集利用什么最优标准进行选择?这是基于底层的 DOE 吗?
举一些我们无法轻易控制的因素的例子会更有用,例如相对湿度、一天中的时间等。
@Ryan_Lekivetz期待看到更多,协变量角色看起来会非常有用。
@Byron_JMP好问题! 我将在下一篇文章中提供更多详细信息/示例,但实际上,如果您在加载数据表时在数据表中选择了行,那么即使它们不是最佳选择,它也会强制这些行进入。
@彼得_赫什- 正确,从 JMP 16 开始,它使用自定义设计规范定义的最优标准。
谢谢@Ryan_Lekivetz ,我真的很喜欢使用协变量作为对设计施加结构/约束的方式的想法——我以前没有这样想过。 协变量因子的另一个潜在用途是使用曲线数据作为实验的输入,而不是传统上使用曲线作为输出。
@Ryan_Lekivetz谢谢,有没有办法在 FFF 空间填充设计中应用 MaxPro Criterion 来进行候选选择?如果您增强设计,将使用哪些标准?一个小众用例,希望进行空间填充设计,然后增强以捕获角点、轴点并使用 MaxPro Criterion 来选择候选集。
谢谢@Ryan_Lekivetz的解释。 我们在 DOE 中运行带有粘合剂的装配机并控制机器设置。 这种情况下的协变量是机器所施加的粘合剂的重量,因为它在每次运行中都会不断变化。 我们没有办法精确控制体重,只有大概的剂量控制。
问题:我们可以将测量的体重作为协变量添加吗? 此信息是在我们执行 DOE 运行时获得的。 这在 JMP 17 中看起来如何?
你好@迈克尔R1 。 如果我理解正确,测量的重量将被视为“不受控制”因素,您可以从同一菜单中选择该因素(本页的第一个屏幕截图)。
@杰德坎贝尔这是正确的。 我们尝试通过机器设置来控制它,但它可以被视为不受控制的因素。 我不知道你可以在设计中添加不受控制的因素。 这是如何运作的?
@迈克尔R1假设您使用的是自定义设计器,您可以在“添加因素”下拉菜单中选择“不受控制”。 在实验过程中,记录每次运行的重量,模型将考虑它。

@迈克尔R1您可以在 JMP 帮助部分找到有关不同因子类型及其用途的说明:因素 (jmp.com)