用户提出的一个常见问题是如何使用 JMP 求曲线下面积。在这篇博文中,我将回顾在 JMP 中执行此操作的几种可能方法。
如果您有数据的 X 和 Y 坐标,则可以使用梯形法则方法。下面,我将通过一个示例来查找血浆浓度时间曲线下的面积。数据包含时间 (Time) 值和每个时间点受试者血液中药物的相关浓度 (C)。本示例中的内容来自 Nicole Jones 在 JMPer Cable 1997 年秋季刊中的文章(请参阅随附的 PDF 副本)。
图A说明了数据和血浆浓度时间曲线。
这个数据的参考是:
Bourne, DWA (1995),“药代动力学和生物药剂学第一门课程”,俄克拉荷马大学药学院。 http://157.142.72.143/gaps/pkbio/Ch04/Ch0403.html
图A。浓度与时间的数据和图

在此示例中,我们使用梯形规则的变体。第一步是将时间曲线划分为每个时间点之间的片段。然后,我们将计算每个段的面积。最后,我们将各个部分相加以获得曲线下的总面积。
将每个时间段视为梯形,其面积由段的宽度和段宽度内的平均浓度给出。定义t i为第i个时间点(时间单位为小时),C i为第i个时间点的药物浓度。第二个和第三个时间段之间的浓度(表示为 AUC 2,3 ,如图 B 所示)计算如下:

图B。分段集中注意力与时间

此过程适用于除最后一个时间段之外的所有时间段 - 从 10 小时(在本例中)到药物完全溶解的时间段。最后一段 C n下的面积可以使用根据样本数据计算出的消除率常数 (kel) 来计算。
kel常数是浓度对数与时间关系的负斜率。它是在 JMP 中使用 Y 对 X 的简单线性回归的斜率标准公式计算得出的:

以本例为例,步骤如下:
1) 在数据表中创建一个新列(我们称之为 ln(C)),并使用计算器中的自然对数函数(在超越函数下)计算浓度的对数。
2) 创建另一个新列(我们称之为beta )并使用计算器计算 ln(C) 上时间回归的斜率参数,如下所示。
计算beta的计算器公式使用赋值函数为斜率计算的分子 (XY) 和分母 (x2) 创建临时变量。然后,它计算并将 XY/x2 指定为beta 。



最后一步是通过将各个线段的面积与最终线段的面积相加来计算曲线下的总面积,计算公式如下:

如果您想将包含这些公式的数据表重新用作模板,只需删除所有行并保存空表并保留其公式即可。要使用该模板,只需打开它并将数据粘贴到“时间”和“C”列中。如果需要,请重命名这些列以适合您的数据,保留的公式将自动使用新的列名称并计算总 AUC。
图 C.计算的斜率参数和总 AUC

图 C 所示的数据表也附在本文中。它包含必要的中间列以及总 AUC 计算,并且包括所有基础公式。
我们收到的另一个常见问题是如何在将平滑曲线拟合到数据时找到 AUC。您可以使用JMP拟合平滑曲线,然后使用梯形规则来估计总AUC。 Fit Y by X 平台和 Graph Builder 平台都可以应用这些拟合。
使用Graph Builder平台的步骤如下:
- 在图形生成器中创建数据的散点图(如果您需要入门帮助,请参阅此处的文档)。
- 在图表中右键单击并选择“添加”>“平滑器” 。 平滑函数出现在图表上,并且图表左侧有一个“平滑”控制面板。默认情况下,该方法设置为样条线。您可以使用滑块调整 lambda 值,或右键单击它来设置特定值。
- 根据需要进行设置,右键单击图表并选择平滑器 > 保存公式。样条预测公式保存到原始数据表中。
- 从数据表中,转到图形 > 刻画器并在 Y、预测公式角色中指定新公式列,然后单击确定。
- 从“预测刻画器”红色小三角菜单中,将“默认 N 级别”选项设置为一个较大的数字,例如 10,000。
- 然后,从红色小三角菜单中选择输出网格表,创建沿曲线的坐标表。
- 使用网格表中生成的坐标,我们可以使用梯形规则来近似曲线下的总面积。
随附一个名为 AUC_GridTable.jmp 的示例表。它是通过上述方法生成的,包含 10,000 行。有两列,每列包含总 AUC 值。第一个名为 Total AUC – Wikipedia Formula,并使用 Wikipedia 中的梯形规则公式( 请参阅此页)。第二种称为 Total AUC – JMPer Cable,并使用本博客文章中讨论的第一种方法中的公式。该方法所需的中间柱也存在。两个总 AUC 列给出相似的近似值。
最后,如果您想找到特定函数的曲线下面积,可以使用辛普森法则进行数值积分。附加了执行集成的自定义 JSL 脚本 (Integrate_Simpson Rule.jsl)。只需提供您想要集成的功能以及集成的上限和下限。
很棒的文章!
我们可以同时利用这个过程来处理多个图表,例如由附加列定义的图表吗? 具体来说,我们如何定义计算器计算公式贝塔?
谢谢!