Utiliser la boucle for sur le graphique de variabilité pour plusieurs colonnesSalut,
J'ai plusieurs colonnes dans un ensemble de données et je souhaitais utiliser un script pour les tracer dans un graphique de variabilité afin de pouvoir générer ces tracés avec des paramètres similaires. Mais il y a une erreur. Quelqu'un peut-il nous éclairer sur la syntaxe correcte ?
mon scénario :
dt = table de données actuelle ();
colnames = dt << obtenir les noms de colonnes (numérique);
show(noms de colonnes);
nw = Nouvelle fenêtre("Tracés");
pour(i=5, i test = noms de colonnes[i];
gb = Graphique de variabilité (
Y( comme colonne(test) ) ,
X( :Groupe, :Lot, :Gaquette ),
Iter maximum ( 100 ),
Limite de conversion (0,00000001),
Abscisses d'intégration des nombres ( 128 ),
Évaluations de fonctions numériques (65536),
Type d'analyse( Nom( "Choisir la meilleure analyse (EMS REML Bayésien)" ) ),
Graphique de développement standard (0),
Afficher les boîtes à moustaches(1),
)
);
nw<
message de journal :
colnames = {Lot, Wafer, X, Y, Nom("4V01PC03MHVN_BF00-LT-VL_HN_11.1X1.1-VALUE_F"), Nom("4V01PC03MHVN_BF00-LT-VL_HN_11.1X11.1-VALUE_F"), Nom("4V01PC03MHVN_BF00- LT-VL_MN_11.1X0.76-VALUE_F"), Nom("4V01PC03MHVN_BF00-LT-VL_MN_11.1X11.1-VALUE_F"), Nom("4V01PC03MHVN_BF00-LT-VL_MNT_11.1X0.76-VALUE_F"), Nom("4V01PC03MHVN_BF) 00 -LT-VL_MNT_11.1X11.1-VALUE_F"), Nom ("4V01PC04MHVP_BF00-LT-VL_HP_0.4X1.1-VALUE_F"), Nom ("4V01PC04MHVP_BF00-LT-VL_HP_11.1X1.1-VALUE_F"), Nom (" 4V01PC04MHVP_BF00-LT-VL_HP_11.1X11.1-VALUE_F"), Nom("4V01PC04MHVP_BF00-LT-VL_MP_11.1X1.1-VALUE_F"), Nom("4V01PC04MHVP_BF00-LT-VL_MP_11.1X11.1-VALUE_F"), Nom( "4V01PC06TX5V_BF00-LT-VL_N5_11.1X11.1-VALUE_F"), Nom("4V01PC06TX5V_BF00-LT-VL_P5_11.1X11.1-VALUE_F"), EndTimestamp} ;
Introuvable lors de l'accès ou de l'évaluation du « Graphique de variabilité », mauvais argument ({., le rôle nécessite au moins 1 colonne.} ), Graphique de variabilité (/*###*/Y (En tant que colonne (test)),
X( :Groupe, :Lot, :Gaquette ),
Iter maximum ( 100 ),
Limite de conversion (0,00000001),
Abscisses d'intégration des nombres ( 128 ),
Évaluations de fonctions numériques (65536),
Type d'analyse( Nom( "Choisir la meilleure analyse (EMS REML Bayésien)" ) ),
Graphique de développement standard (0),
Afficher les boîtes à moustaches( 1 )
)
Dans le script suivant, erreur marquée par /*###*/
dt = Table de données actuelle ();
colnames = dt << obtenir les noms de colonnes (numérique);
Show( noms de colonnes );
nw = Nouvelle fenêtre( "Tracés" );
Pour( i = 5, i < N Items( noms de colonnes ), i++,
test = noms de colonnes[i];
gb = Graphique de variabilité (/*###*/Y (En tant que colonne (test)),
X( :Groupe, :Lot, :Gaquette ),
Iter maximum ( 100 ),
Limite de conversion (0,00000001),
Abscisses d'intégration des nombres ( 128 ),
Évaluations de fonctions numériques (65536),
Type d'analyse( Nom( "Choisir la meilleure analyse (EMS REML Bayésien)" ) ),
Graphique de développement standard (0),
Afficher les boîtes à moustaches( 1 )
);
);
nw << append( Rapport( gb ) );
Re : Utiliser la boucle for sur un graphique de variabilité pour plusieurs colonnesBonjour, merci pour les changements. Cela a fonctionné comme je le souhaitais.
Re : Utiliser la boucle for sur un graphique de variabilité pour plusieurs colonnesSalut,
Merci pour les conseils. Mais le conseil n°1 n’est pas applicable car je voulais vraiment commencer à 5 ans.
Re : Utiliser la boucle for sur un graphique de variabilité pour plusieurs colonnesPlusieurs facteurs sont à l'origine de l'erreur. La première est que dans votre boucle For(), vous initialisez i = 5, alors que je suppose que vous voudriez commencer par le premier élément de la liste stocké dans les noms de colonnes, il devrait donc être i = 1. La deuxième chose est que vous n'avez pas besoin d'utiliser As Column() - vous pouvez simplement utiliser le nom de la variable (test) qui stocke le nom de la colonne à chaque itération, Y( test ).
De plus, vous ajoutez le graphique de variabilité en dehors de la boucle For(), ce qui signifie que seul le dernier tracé sera ajouté à la fenêtre. Vous voulez que la dernière ligne de votre code soit à l'intérieur de la boucle. J'espère que cela t'aides!
Re : Utiliser la boucle for sur un graphique de variabilité pour plusieurs colonnesJ'ai modifié votre code et je pense qu'il fonctionnera comme vous le souhaitez.
1. J'ai ajouté une V List Box() à votre "Nouvelle fenêtre". Cela vous permettra d’avoir un meilleur contrôle sur l’ordre de sortie souhaité. Si vous souhaitez que les affichages s'affichent de gauche à droite, passez à une H List Box().
2. J'ai ajouté l'élément "Invisible" au tableau de variabilité. Je suppose que ce que vous voulez, c'est se retrouver avec une seule fenêtre sans veuves distinctes pour chaque graphique.
3. As Column() ne fonctionnerait pas. Je ne sais pas pourquoi ! Cependant, le passage à une fonction Column() a fonctionné. De plus, j'ai éliminé le besoin de la variable "Test", car il est plus propre d'avoir simplement la référence de liste, ColNames[] directement dans le code du graphique de variabilité.
4. Je suppose que vous voulez une fenêtre unique avec toutes les sorties. Votre ajout à la fin de votre code ajouterait uniquement le dernier graphique. La référence à « gb » n’est pas additive. "gb" sera remplacé par chaque graphique successif à chaque fois qu'il sera référencé dans la boucle For(). Par conséquent, l’ajout doit être dans la boucle.
dt = Current Data Table();
colnames = dt << get column names( numeric );
Show( colnames );
nw = New Window( "Plots", myVLB = V List Box() );
For( i = 5, i < N Items( colnames ), i++,
gb = Variability Chart(
invisible,
Y( Column( colnames[i] ) ),
X( :Group, :Lot, :Wafer ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( Name( "Choose best analysis (EMS REML Bayesian)" ) ),
Std Dev Chart( 0 ),
Show Box Plots( 1 ),
);
myVLB << append( Report( gb ) );
);