你好
假设我们有主数据表,还有另一个数据表我们想用来对主要数据表进行子集化+在此过程中添加一些条件;
主表

另一个数据表

当group == K和Number == 2时,如何遍历主表的Label列的每一行以获取与子表行(L1,L3,L5)匹配的行并获取行
所以输出表应该看起来像

请为解决方案提供for循环或任何其他可用的方法,并且不要使用像list = {K1,K3,K5}之类的简短列表,因为在我的真实数据中,我有1000行。
https://community.jmp.com/t5/Discussions/How-to-select-rows-based-on-multiple-criteria/td-p/7014
这是做您想要的一种方式的示例。
我建议您花些时间阅读“帮助”下拉菜单下的“ JMP文档库”中的“使用JMP和脚本指南”文档。它将打开使用JMP中对象的各种方式的窗口,而不仅限于认为每件事都需要使用传统的编程方法进行编码。
names default to here(1);
dt1=data table("main_table");
dt2=data table("subset_table");
dt2b = dt2 << subset(selected rows(0), columns(:label));
dtFinal = dt1 << Join(
with(dt2b),
Match Flag( 1 ),
By Matching Columns( :Label = :Label ),
Drop multiples( 0, 0 ),
Include Nonmatches( 1, 1 ),
Preserve main table order( 1 ),
merge same name columns( 1 )
);
close( dt2b, nosave );
dtFinal << select where(:match flag == 3 | (:Group == "K" & :Number == 2) );
dtFinal << invert row selection;
dtFinal << delete rows;优秀的! 我必须在某些时候发表评论。 手册还不够。 我仔细阅读了手册,没有一个很好的例子可以解决我的问题。 您是否有更好的资料来源,我们可以找到这些功能的一些用例?