Ciao, sto cercando di utilizzare un elenco di nomi che popolano una colonna per selezionare le righe corrispondenti di un'altra colonna (in un'altra tabella) al fine di creare un sottoinsieme della tabella e generare diversi sottoinsiemi.
Ottenere i nomi / valori dalla prima colonna non è un problema ma non riesco a trovare la sintassi corretta per il ciclo.
dt4 = Current Data Table();
uniqueVals = {"2021_file1_T1", "2021_file1_T2"};
tableList= {};
For(i=1, i< N Items(uniqueVals), i++,
dt4 << select where( As Column("Type") == [i] ) );
dt4 << Select Columns (all);
newdt[i] = dt4 << Subset( Selected columns );
Insert Into(tableList, Data Table(newdt[i]));
dt4 << Clear Column Selection();
dt4 << Clear Select();
);// end of ForPenso che la mia logica di base sia OK poiché questo codice funziona molto bene
dt4 << select where( As Column("Type") =="2021_file1_T2");
dt4 << Select Columns(all);
dt4 << Subset (Selected columns);Ma non riesco a capire come passare [i] a "Seleziona dove".In allegato è una tabella di prova semplificata.
Apprezzerò qualsiasi suggerimento / soluzione / suggerimento.
Eri abbastanza vicino nel fare quello che volevi.Di seguito è riportata la mia rielaborazione del codice.Si noti che l'elenco tableList è ridondante con l'elenco newdt a cui si fa riferimento.
dt4 = Current Data Table();
uniqueVals = {"2021_file1_T1", "2021_file1_T2"};
//tableList = {};
newdt = {};
For( i = 1, i <= N Items( uniqueVals ), i++,
dt4 << select where( As Column( "Type" ) == uniqueVals[i] );
dt4 << Select Columns( all );
newdt[i] = dt4 << Subset( Selected columns );
//Insert Into( tableList, Data Table( newdt[i] ) );
dt4 << Clear Column Selection();
dt4 << Clear Select();
);