Hola, estoy tratando de usar una lista de nombres que pueblan una columna para seleccionar las filas coincidentes de otra columna (en otra tabla) con el fin de crear subconjuntos de la tabla y generar varios subconjuntos diferentes.
Obtener los nombres / valores de la primera columna no es un problema, pero no puedo encontrar la sintaxis correcta para el 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 ForCreo que mi lógica básica está bien ya que este código funciona muy bien
dt4 << select where( As Column("Type") =="2021_file1_T2");
dt4 << Select Columns(all);
dt4 << Subset (Selected columns);Pero no puedo entender cómo pasar [i] a "Seleccionar dónde".Se adjunta una tabla de prueba simplificada.
Agradeceré cualquier sugerencia / solución / sugerencia.
Estuviste muy cerca de hacer lo que querías.A continuación se muestra mi reelaboración de su código.Tenga en cuenta que su lista tableList es redundante con la lista newdt a la que hace referencia.
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();
);