使用 GraphBuilder 和/或 Analyze(使用脚本)绘制非线性回归图这个帖子是类似于这个,我在那里发表了评论,但由于该帖子已有 2 年历史,因此可能不会被看到,而且我无法将解决方案应用于我的方程。
我正在使用下面的脚本进行非线性回归来准备数据,然后使用分析选项,归一化荧光作为 Y 值,模型(公式)列作为 X 值(反转轴),并通过井位置,但这一次只能做一个。 如果我使用 GraphBuilder,则无法让 Smoother 使用公式。 我想在一个图上或在一个绝对理想的独角兽世界中绘制所有图,一次绘制 3 个井位(例如 B2-B4),但这似乎不现实:p
Data Table( "Melt Curve Raw Data" ) << New Column( "Normalized Fluorescence",
formula(
(:Fluorescence - Col Min( :Fluorescence, :Well Position )) / (
Col Max( :Fluorescence, :Well Position )
-Col Min( :Fluorescence, :Well Position ))
)
);
Data Table( "Melt Curve Raw Data" ) << New Column( "Model", Numeric,
"Continuous", Format( "Best", 12 ),
Formula(Parameter({m1 = -60, m2 = 0.2, m3 = -50, m4 = -0.3, m5 = 100000, m6 = 320},
((m1 + m2 * (:Temperature + 273)) + (m3 + m4 * (:Temperature + 273)) * Exp((-m5 / (1.987 *
(:Temperature + 273))) * (1 - (:Temperature + 273) / m6))) /
(1 + Exp((-m5 / (1.987 * (:Temperature + 273))) * (1 - (:Temperature + 273) / m6))))));
分析数据表图形脚本编写回复:使用 GraphBuilder 和/或分析(使用脚本)绘制非线性回归图我不能确切地说出您在寻找什么,这些图表中的一个偶然显示了您正在寻找的内容,或者您可以发布一次仅显示一个图表的屏幕截图吗?您说您使用了分析,但我不确定您选择了该菜单中的哪个选项。



Graph Builder(
Size( 671, 507 ),
Show Control Panel( 0 ),
Variables(
X( :Model ),
Y( :Normalized Fluorescence ),
Overlay( :Well Position )
),
Elements( Smoother( X, Y, Legend( 12 ) ), Points( X, Y, Legend( 13 ) ) ),
Local Data Filter(
Add Filter(
columns( :Well Position ),
Where( :Well Position == {"B2", "B3", "B4"} ),
Display( :Well Position, N Items( 15 ), Find( Set Text( "" ) ) )
)
)
);
Graph Builder(
Size( 671, 543 ),
Show Control Panel( 0 ),
Variables( X( :Model ), Y( :Normalized Fluorescence ), Wrap( :Well Position ) ),
Elements( Points( X, Y, Legend( 9 ) ), Smoother( X, Y, Legend( 11 ) ) ),
Local Data Filter(
Add Filter(
columns( :Well Position ),
Where( :Well Position == {"B2", "B3", "B4"} ),
Display( :Well Position, N Items( 15 ), Find( Set Text( "" ) ) )
)
)
);
Graph Builder(
Size( 1308, 384 ),
Show Control Panel( 0 ),
Variables(
X( :Model ),
Y( :Normalized Fluorescence ),
Group X( :Well Position )
),
Elements( Smoother( X, Y, Legend( 12 ) ) ),
Local Data Filter(
Add Filter(
columns( :Well Position ),
Where( :Well Position == {"B2", "B3", "B4"} ),
Display( :Well Position, N Items( 15 ), Find( Set Text( "" ) ) )
)
)
);回复:使用 GraphBuilder 和/或分析(使用脚本)绘制非线性回归图哇,这些都很棒。 我最初寻找的是右上角的多色散点图,但我绝对被你制作的图表和脚本所震撼。
使用分析选项时,我得到了我需要的值,但每个图形都是独立的。 在单击“开始”然后单击“置信限制”后,我附上了我当前使用的设置的屏幕截图以及结果。
我还附上了尝试对 Well Position 使用“group”而不是“by”时收到的错误消息。
回复:使用 GraphBuilder 和/或分析(使用脚本)绘制非线性回归图非线性启动对话框过度简化了情况。 您需要对自定义模型执行更多操作,以指示 Group 变量如何影响参数。 您的模型仅包含常用参数。 唯一参数取决于组变量的级别。
请参阅这一页和底部的注释。
你有 JMP 专业版吗? 您是否尝试过 Functional Data Explorer?
回复:使用 GraphBuilder 和/或分析(使用脚本)绘制非线性回归图嗨马克!
非常感谢您的回复。是的,我有 JMP Pro,但我还没有尝试过 Functional Data Explorer。 我今天会试着阅读它。 感谢您的建议。
我看到了您链接到的关于使用“扩展到类别”复选框的段落。 我将其添加为第 7 个参数,在分析页面中,它在一个图上绘制了所有内容(太棒了!),但只给了我一行的值。 我是否错误地使用了“扩展到类别”选项? 我应该将它添加到我原来的 6 个参数之一吗?
回复:使用 GraphBuilder 和/或分析(使用脚本)绘制非线性回归图您没有正确使用此功能。 帮助中的段落是正确的,但可能有点模棱两可。 这是正确的方法,一步一步。 我正在使用 Big Class 来拟合 :weight 与 :height 的简单指数模型,其中 :age 作为分组变量 (:weight = A*Exp( B*height ) )。
为模型添加一个新的数据列。 将模型的公式添加到数据列。 定义参数。

单击确定并选择分组变量。

对并非所有曲线通用的其他参数重复此步骤。 构建模型。 根据需要选择参数。 这是分组指数模型。

保存公式并启动非线性。

单击“确定”开始拟合。

不过,我担心模型中的参数化会导致估计值之间存在高度相关性。 引入分组变量会加剧这种相关性,特别是考虑到组的数量。 所以另一种方法是使用原始模型并在 By 角色中使用曲线 ID。 这种方式将允许您自行拟合每条曲线。
另一方面,如果您不依赖于这个模型,那么 FDE 是另一种方式。 它使用基函数的扩展来对数据建模。 这些是通用内插器。
