SPLIT de haut en large : comment regrouper dynamiquement les colonnes résultantes ?J'ai donc un gros dt que je divise de TALL à WIDE. Cela se traduit par une quantité énorme de colonnes, toutes avec le format d'en-tête = "Step#_Parameter_Function".
Le nombre de ces colonnes varie et n'est jamais prévisible et défini, pas plus que les # ou les noms d'étape.
Comment pourrais-je ensuite grouper ces colonnes par Step#? Une sorte de boucle pour parcourir la longue liste de colonnes, choisir le premier numéro d'étape, puis l'affecter à un groupe intitulé « étape # » ?
<< Split(
Split By( :recipe_step_id, :parameter_name, :aggregate_function ),
Split( :value ),
Group( :recipe, :equipment_id, :chamber_id, :wafer_scribe, :wafer_process_start_time ),
Output Table( "Wide" ),
Remaining Columns( Drop All ),
Sort by Column Property
);

ScriptRe : SPLIT de haut en large : comment regrouper dynamiquement les colonnes résultantes ?Voici un script simple qui crée un nouveau groupe de colonnes commençant par les caractères "NPN"

names default to here(1);
// Open Data Table: big class.jmp
// → Data Table( "big class" )
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
colNamesList = dt << get column names(string, continuous);
NPNList = {};
for(i=1,i<=nitems(colNamesList),i++,
If(contains(colNamesList[i],"NPN")==1,
insert into(NpNList,colNamesList[i])
)
);
dt << group columns("NPNGroup", NPNList);
Re : SPLIT de haut en large : comment regrouper dynamiquement les colonnes résultantes ?étonnante. Une dernière question. Est-il possible de lui fournir une liste de groupes de chaînes de caractères à parcourir, en recherchant les colonnes qui correspondent, puis en les plaçant dans leurs groupes respectifs ?
comme une liste de :
colonnes commençant par "AAA", "BBB", "CCC", etc.
puis les mettre dans des groupes étiquetés AAA, BBB, CCC
?
comment ignorer l'erreur s'il n'y a pas de colonnes correspondant à BBB ?