基於另一個資料表的子集資料表你好,
假設我們有主資料表,並且我們想使用另一個資料表來對主資料表進行子集化並在此過程中添加一些條件;
主表

另一張數據表

如何遍歷主表中標籤列的每一行以取得與子表行(L1、L3、L5)相符的行,並在 group == K 且 Number == 2 時取得行
所以輸出表應該是這樣的

請提供帶有 for 循環或其他任何內容的解決方案,並且不要使用像 list = {K1, K3, K5} 這樣的短列表,因為在我的真實數據中我有 1000 行。如何根據多個條件選擇行?
資料混合與清理回覆:基於另一個資料表的子集資料表掃描手冊不起作用...您需要閱讀手冊...它為您提供了構建的結構回覆:基於另一個資料表的子集資料表出色的! 我必須在某些方面發表評論。 手動還不夠。 我瀏覽了手冊,沒有找到與我的問題相近的範例。 您是否有更好的來源讓我們可以找到這些函數的一些用例?
回覆:基於另一個資料表的子集資料表這是執行您想要的操作的一種方法的範例。
我建議您花些時間閱讀 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;