Script JSL per verificare se un singolo valore di cella è in un elencoData una tabella di dati con una colonna di valori limitati (vedi esempi sotto), vorrei scrivere uno script che guarda la prima cella e controlla se è in un elenco di valori. Lo scopo sarebbe quello di utilizzare qualunque sia il primo valore come condizione per un'istruzione IF che indicherebbe quindi un determinato insieme di attività.
Qualcuno ha un'idea di come fare questo?
Grazie
per esempio
O
Ri: script JSL per verificare se un singolo valore di cella è in un elencoGrazie @pmroz E @txnelson per l'aiuto allo scripting. Per essere più specifici, quello che sto cercando è utilizzare il controllo se il valore della prima cella è o meno nell'elenco come condizioni per un'istruzione if che guiderà alcune altre azioni. Penso che entrambi i tuoi script riempiano un altro array ma non sono un T/F rigoroso. Cercherò di usarli e ti farò sapere cosa succede.
Ri: script JSL per verificare se un singolo valore di cella è in un elencoQuesto potrebbe essere utile:
dt = New Table( "test", Add Rows( 5 ),
New Column( "CAT", Character, "Nominal",
Set Values( {"A", "B", "C", "D", "E"} ) ),
New Column( "time", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3, 4, 5] ) )
);
look_for_list = {"B", "D"};
found_rows = dt << get rows where(contains(look_for_list, as column(dt, "CAT")));
print(found_rows);
[2, 4]
Ri: script JSL per verificare se un singolo valore di cella è in un elencoNon sono sicuro di cosa stai chiedendo, tuttavia, di seguito è riportato uno script che potrebbe indirizzarti nella giusta direzione
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
theList = {59, 66};
For( i = 1, i <= N Rows( dt ), i++,
If( N Rows( Loc( theList, :height[i] ) ) > 0,
Show( i )
)
);Re: Script JSL per verificare se un singolo valore di cella è presente in un elencoMi sono imbattuto in questa discussione cercando qualcosa di simile per chiudere le tabelle di dati aperti in sospeso durante il test del codice. Ho usato il tuo semplice codice qui sopra. Ho pensato di pubblicarlo nel caso in cui possa essere utile a qualcuno che si imbatte in questa discussione:
// list of table names that I want to make sure are closed before running the script
tname = { "TABLE1", "TABLE2", "TABLE3", "TABLE4" };
// loop to see if open tables match the name in the list above, then close them
// need to restart the i counter to i = 0 because it seems closing a table changes the 'i' number associated with the table
For( i = 1, i <= N Table(), i++,
If( N Rows (Loc( tname, Data Table(i) << Get Name ) ) > 0,
Close(Data Table(i), no save);
i = 0;
)
);