从回归线中排除数据点,但使它们在图表中仍然可见大家好!
我使用一组训练数据点来创建线性回归(信号强度作为样品内物质浓度的函数),并将所得公式应用于测试数据点集,以反向预测相关样品的物质含量。现在我想在一个图表中展示训练集的数据点、可视化线性回归的回归线以及测试集的数据点。目的是显示所有数据点如何围绕信号强度与物质浓度的理想函数分布。我知道如何绘制训练集的数据点以及如何在同一图中创建回归线。但是如何添加测试集的数据点而不影响回归线的创建呢?测试集的数据点应在图中出现并可见,但回归线应仅是训练集数据点的乘积。另外,我想用与其他数据点不同的颜色突出显示测试集的数据点。
提前致谢!
数据探索和可视化回复:从回归线中排除数据点,但使它们在图中仍然可见可能有多种方法可以实现这一点。如果选择测试集的行并右键单击“排除”。这将从分析中排除数据,但仍显示点。使用同一命令还有多个颜色和标记选项。
您还可以创建“测试”列并识别测试行(相对于其他行,例如 0 和 1),然后使用“行”>“颜色”或“按列标记”>“测试”
回复:从回归线中排除数据点,但使它们在图中仍然可见我完全有可能不理解你的问题,但这里有一些可以尝试的事情。

在 Fit Y by X 平台中,您可以使用训练和测试指示器(验证列)按列对数据进行分组
然后拟合一条线,该线将是用于测试和训练的单独线。
要突出显示训练组,可以尝试打开阴影线和虚线以获得拟合的置信区间
我用big class.JMP数据集做了一个示例图

图形生成器可以做类似的事情。
双击图例即可获取这些菜单:

我使“M”线完全透明,“0”。

回复:从回归线中排除数据点,但使它们在图中仍然可见非常感谢你们!你的建议对我帮助很大!
回复:从回归线中排除数据点,但使它们在图表中仍然可见非常感谢您的详细描述!它极大地改善了我的图表!
回复:从回归线中排除数据点,但使它们在图表中仍然可见非常感谢,这也是非常有用的信息!
回复:从回归线中排除数据点,但使它们在图表中仍然可见使用大类数据集作为示例:绘制身高与体重的关系图并显示所有点,但仅绘制女性的相关性。
交互方式:
- 在数据表中选择男性行并排除(但不隐藏)。
- 在 Graph Builder 中:绘制身高与体重的关系图,将性别设置为覆盖变量,从平滑线更改为拟合线,然后按住 SHIFT 键并从红色三角形菜单中选择“显示排除的行”。Shift 键很重要,因为它会取消隐藏这个通常隐藏的选项。

通过脚本,这次使用本地数据过滤器而不是排除数据表中的行:
Names Default to here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
dt << Graph Builder(
Size( 300, 200 ),
Show Control Panel( 0 ),
Show Excluded Rows( 1 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements(
Points( X, Y, Legend( 3 ) ),
Line Of Fit( X, Y, Legend( 5 ), R²( 1 ) )
),
Local Data Filter(
Show Controls( 0 ),
Mode( Show( 0 ) ),
Add Filter( columns( :sex ), Where( :sex == "F" ) )
)
);
希望这有帮助。
回复:从回归线中排除数据点,但使它们在图表中仍然可见如果这篇文章发了两次,我深感抱歉。我的第一篇帖子似乎已经消失了。
以大类为例:绘制身高与体重的关系,但仅使用女性数据点显示相关性。
交互方式:
- 在数据表中,选择男性数据行并排除(但不隐藏),
- 在图形生成器中:绘制身高与体重的关系图,将性别设置为覆盖变量,将平滑线更改为拟合线,然后按住 SHIFT 键从红色三角形菜单中选择“显示排除的行”(需要按住 Shift 键才能取消隐藏这个通常隐藏的选项)。

使用脚本,这次使用本地数据过滤器,而不是修改表格:
Names Default to here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
dt << Graph Builder(
Size( 300, 200 ),
Show Control Panel( 0 ),
Show Excluded Rows( 1 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements(
Points( X, Y, Legend( 3 ) ),
Line Of Fit( X, Y, Legend( 5 ), R²( 1 ) )
),
Local Data Filter(
Show Controls( 0 ),
Mode( Show( 0 ) ),
Add Filter( columns( :sex ), Where( :sex == "F" ) )
)
);
希望这有帮助!
回复:如何从回归线中排除数据点,但仍使其在图表中可见太棒了,谢谢!