Inclure un script pour chaque table de sous-ensembleSalut tout le monde,
Je crée beaucoup de tables de sous-ensembles pour nettoyer mes données et j'aimerais appliquer le même script à chacune des tables de sous-ensembles. Comment puis je faire ça?
Merci!
ScriptRe : Inclure un script pour chaque table de sous-ensembleBonjour @LGaspard ,
Souhaitez-vous que les scripts de table soient copiés de l'ensemble source vers le sous-ensemble ?Si tel est le cas, vous pouvez vérifier que cela se produit en ouvrant un exemple d'ensemble de données, Big Class, par exemple, et en créant un sous-ensemble aléatoire.Tous les sous-ensembles de table sont copiés dans le sous-ensemble nouvellement créé.
Si vous souhaitez qu'un script d'une fenêtre de script s'applique aux sous-ensembles, assurez-vous de donner un nom à vos sous-ensembles lors de la création . Voici un exemple.
Names default to here(1);
bigclass = open( "$SAMPLE_DATA/Big Class.jmp" );
// Subset data table
bigclass << Row Selection(
Select where( :Height >= 65 ) );
dt << Subset( (Selected Rows), Output Table Name( "Tall_children" ) );
tallchildren = data datable( "Tall_children" );
/* Call on tallchildren to work with the data table (subset) that you just created */
Re : Inclure un script pour chaque table de sous-ensembleOui, j'ai donc une table de données principale, et à partir de là, je crée environ 10 tables de sous-ensembles différentes. Et je voudrais ajouter le même script à chaque table de sous-ensemble. Une idée?
Aussi, puis-je renommer toutes les tables de sous-ensembles une par une ?
Merci!
Re : Inclure un script pour chaque table de sous-ensembleVoici un exemple simple utilisant un Expr() pour contenir le script à utiliser plusieurs fois
names default to here( 1 );
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "$SAMPLE_DATA/Big Class.jmp" );
summarize( ageList = by( :Age ) );
// Here is the script that will be applied to each data table
theScript = Expr(
dt << new column( "Ratio", formula( :height / :weight ) );
dt << set name( "The Table Name is Age=" || ageList[i])
);
// Create a data table for each level of Age in the data table.
// The list called dtList will contain a refereence to each individual
// table created
dtList = Data Table( "Big Class" ) << Subset(
Output Table( "Untitled 2.jmp" ),
By( :age ),
All rows,
Selected columns only( 0 ),
columns( :name, :sex, :height, :weight )
);
show( dtList );
For( i = 1, i <= n items( dtList ), i++,
dt = dtList[i];
// Run the script
theScript;
);
Vous pouvez également consulter la fonction "Include ()".