So unterteilen Sie eine Datentabelle basierend auf dem SpaltenwertHallo!Ich habe eine große JMP-Datei, die die Ergebnisse der Stabilitätstests für viele (> 75 Produktlose) enthält.Ich möchte ein Skript erstellen, um die Zeilen der Testdaten basierend auf dem Spaltenwert (dh der Chargennummer) zu unterteilen und nur bestimmte Testergebnisspalten aus der Datei aufzunehmen. Ich bin ziemlich neu in JMP und JMP-Skripten, aber ich habe es geschafft, das folgende Skript zusammenzustellen:
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" )
)
)
Im Moment wählt das Skript die Zeilen basierend auf den Zeilennummern aus, in denen die Daten für ein bestimmtes Los gefunden werden.Dies ist nicht optimal, da manchmal Zeilen in die Tabelle eingefügt werden, wenn Stabilitätsstudien geändert werden.Wie würde ich das obige Skript ändern, um Zeilen von "Lot 12345" basierend auf der "Lot-Nr." Spalte statt Zeilennummer?Ich benutze JMP 15 (falls das wichtig ist).
AnalytikDatentabelleSkriptingBetreff: Unterteilen einer Datentabelle basierend auf dem SpaltenwertVielleicht funktioniert dieses Beispiel für Sie, 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);
);
Betreff: Unterteilen einer Datentabelle basierend auf dem SpaltenwertIch würde empfehlen, die Funktion "Wo auswählen" zu verwenden (zu finden unter "Zeilen-> Zeilenauswahl"). Ähnliches sollte funktionieren:
Data Table( "Stability Trending" ) << Row Selection(
Select where( :Lot No. == "Lot 12345" ),
Dialog( Edit( Equal( Source Column( :Screen Size ) ) ), Keep dialog open( 0 ) )
);
Subset( (Selected Rows), Output Table Name( "Subset-Lot 12345" ) );
Betreff: Unterteilen einer Datentabelle basierend auf dem SpaltenwertTippfehler gemacht (vergessen, einen meiner Spaltennamen durch den Spaltennamen "Losnummer" in Ihrem Beispiel zu ersetzen):
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" ) );
Betreff: Unterteilen einer Datentabelle basierend auf dem SpaltenwertVielen Dank für die Vorschläge an alle.Folgendes habe ich getan:
dt = Data Table( "Stability Trending" );
LN={"Lot 12345"};
dt<<SELECT where=""></SELECT>Die resultierende Datentabelle gibt mir die Ausgabe, nach der ich gesucht habe - nur die Zeilen, die die interessierende Chargennummer und die Testergebnisse aus den von mir angegebenen Spalten enthalten.