如何根據列值對數據表進行子集化你好!我有一個很大的 JMP 文件,其中包含許多產品(> 75 個產品批次)的穩定性測試結果。我想創建一個腳本來根據列值(即批號)對測試數據行進行子集化,同時僅包含文件中的某些測試結果列。 我對 JMP 和 JMP 腳本編寫相當陌生,但我已經設法將以下腳本放在一起:
Data Table( "Stability Trending" ) <<
Subset(
Output Table( "Data Subset - Lot 12345" ),
Copy formula( 0 ),
Selected Rows( 0 ),
Rows(
[1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1325,
1326, 1327, 1328, 1329]
),
columns(
:Protocol No.,
:Lot No.,
:Final Fill Configuration,
:Name( "Storage Temperature (°C)" ),
:Time Point,
:Time Interval,
:Sterility Result,
:Name( "Test 1 Result" ),
:Name( "Test 2 Result" ),
:pH Result,
:Name( "Test 3 Result" ),
:Name( "Test 4 Result" )
)
)
現在,腳本正在根據找到特定批次數據的行號來選擇行。這不是最佳選擇,因為修改穩定性研究時有時會在表中插入行。我如何修改上面的腳本以根據“批號”對“批號 12345”的行進行子集化?列號而不是行號?我正在使用 JMP 15(如果這很重要)。
消費者和市場研究分享和交流結果回复:如何根據列值對數據表進行子集化謝謝大家的建議。這是我最終所做的:
dt = Data Table( "Stability Trending" );
LN={"Lot 12345"};
dt<<SELECT where=""></SELECT>生成的數據表為我提供了我正在尋找的輸出 - 僅包含感興趣的批號的行和我指定的列的測試結果。
回复:如何根據列值對數據表進行子集化犯了一個拼寫錯誤(忘記將我的列名稱之一替換為示例中的列名稱“批號”):
Data Table( "Stability Trending" ) << Row Selection(
Select where( :Lot No. == "Lot 12345" ),
Dialog( Edit( Equal( Source Column( :Lot No. ) ) ), Keep dialog open( 0 ) )
);
Subset( (Selected Rows), Output Table Name( "Subset-Lot 12345" ) );
回复:如何根據列值對數據表進行子集化我建議使用“選擇位置”功能(在“行”->“行選擇”下找到)。 與此類似的東西應該有效:
Data Table( "Stability Trending" ) << Row Selection(
Select where( :Lot No. == "Lot 12345" ),
Dialog( Edit( Equal( Source Column( :Lot No. ) ) ), Keep dialog open( 0 ) )
);
Subset( (Selected Rows), Output Table Name( "Subset-Lot 12345" ) );
回复:如何根據列值對數據表進行子集化也許這個例子對你有用,BR
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Semiconductor Capability.jmp" );
dt_lst = dt << Subset(
By( :lot_id ),
All rows,
columns( :wafer, :Wafer ID in lot ID, :SITE, :NPN1, :PNP1, :PNP2, :NPN2, :PNP3 )
);
Wait( 1 );
For( i = 1, i <= N Items( dt_lst ), i++,
Close( dt_lst[i], nosave );
wait(0.2);
);