
我尝试计算这条曲线的端点(见图)。曲线本身可以用S形曲线建模。有没有办法自动计算?我唯一能找到的是拐点,但这不是我需要的。
你好@Marjoleine ,
我个人不太了解终点集的定义,但它看起来像是 S 形曲线的线性斜率与渐近线相交处的 X 值。如果是这样的话,我认为 JMP 无法自动执行该操作。
不过,顺便提一下,在拟合曲线平台中,拟合完 S 型曲线后,您可以点击 S 型曲线名称(例如 Gompertz 或 Logistic 等)旁边的红色按钮,然后选择“自定义逆预测”。执行此操作时,您需要提供几个 Y 值,JMP 会使用 S 型函数进行逆计算,以确定 Y 值对应的 X 值。这可能不是您想要的,但将来可能会在其他方面有用。
话虽如此,您可以编写一个脚本来“自动”地解决问题,但需要完成几个步骤。首先,我建议您看看@JerryFish发布的一系列非常有用的帖子,它们讨论了分段拟合非线性数据, 网址为这里。如果您需要多次执行此操作并且自动化可以简化您的工作,那么这些帖子可能对您非常有用。
如果这是一次性的事情,您可以按照以下步骤手动执行此操作(也可以使用 JSL 自动执行)。
- 首先选择对 S 形曲线进行线性近似不需要的数据点 - 本质上,您要在拐点处将一条线拟合到 S 形曲线的斜率,同时忽略渐近极值。
- 创建一个新列并赋予它一个公式——您将输入的公式类似于 m*X+b。
- m 是一个参数,您必须在公式窗口中定义它并赋予它一个起始值。
- X 是拟合 S 形曲线时使用的 X 回归列。
- b 是一个参数,您必须在公式窗口中定义它并赋予它一个起始值。
- 返回非线性拟合平台并使用这个新的列公式作为 X 回归量/预测量公式。
- 将 Y 列转换为 Y 角色并单击“确定”,然后在新报告窗口中单击“执行”。
这应该会得到一个包含数据点的良好线性拟合,并排除曲线的渐近线部分。在报告底部,您会看到 m 和 b 的参数值,您可以使用它们来反向计算 Y 渐近线处的 X 值。
下面是我运行的一个示例的截图。在本例中,我的 Y 轴渐近线是 100,m = -0.255,b = 162.99,所以 (100-162.99)/(-0.255) = 247。所以在我的例子中,我的结束集是 247。当然,你可以用 JSL 编写脚本,这样当你在程序中点击“开始”按钮时,它就会自动输出你的结束集,但这可能超出了你的预期。同样,如果你需要执行几十甚至几百次,那么编写代码来帮你完成这件事可能是值得的。
希望这有帮助!,
DS

谢谢。终点确实是斜率与渐近线的交点。我会尝试按照你的建议写一个脚本,因为我至少需要写100次。
玛乔琳